rest运算符和Array扩展运算符的区别
- […arguments]这里用的是哪种运算符?得到什么?
扩展运算符:[…]
将数组转换为逗号分隔的[参数序列]
常见用途:
1.数组合并
2.数组克隆
注意克隆时候是浅拷贝
3.将伪数组转为真正的数组
比如,document.querySelectorAll(‘div’)是个伪数组:
不过有rest存在,所以没什么必要用这个
4.字符串转数组
以前字符串转数组用split,现在用扩展运算符即可:
let str = 'love';
let arr = [...str];
console.log(arr);//['l','o','v','e']
rest运算符
rest运算符也是三个点号,不过其功能与扩展运算符恰好相反,把逗号隔开的值序列组合成一个数组
bar(a, ...b) {
console.log(a);//1
console.log(b);//[2,3,4]
}
bar(1,2,3,4);