码迷,mamicode.com
首页 > 其他好文 > 详细

... 运算符

时间:2019-01-21 23:21:53      阅读:199      评论:0      收藏:0      [点我收藏+]

标签:报错   就会   运算   rgs   ror   开始   concat   类型   语法   

剩余参数 和 展开项

ES6 的语法加一个 ... 的操作符,用来把数组和对象展开。

大概总结了有以下几种用法

剩余参数

const fun (...args)=>{
    console.log(args)
}

这样输出来的就是一个真正的数组,不用再像之前那样用Array.prototype.concat.call()来实现参数到数组的转变。

展开项

let arr1 = ["a","b","c"];
let arr2 = [1,2,3];
let arr = [...arr1,...arr2]
//输出来 ["a", "b", "c", 1, 2, 3]

这种方式对于数组和对象皆可用

解构

var a,b,rest;
[a,b,...rest] = [1,2,3,4,5,6,7,8,9];
console.log(rest)
//输出 [2,3,4,5,6,7,8,9]

这样的参数解构会把前面指定的变量跟值一一对应,剩余的所有值就对应rest 变量

??解构的参数必须要放在最后一位 要不然会报 :

Uncaught SyntaxError: Rest element must be last element

刚开始的时候在纠结 ...是一种什么类型的数据,如果打印console.log(...[1,2,3]) 直接就返回的是1 2 3 接着用 console.log(typeof (...[1,2,3])) 就会报错。后来就不纠结了 其实就是要展开的对象是什么类型,如果是数组,就是数组的子项,。象就是对象的子项,字符串的话就是字符串的每个字符。


心情属于自己,控制心情就等于做好自己

... 运算符

标签:报错   就会   运算   rgs   ror   开始   concat   类型   语法   

原文地址:https://www.cnblogs.com/qujun/p/10301456.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!