1. 扩展运算符
含义:(狭义)将一个数组转化为用逗号隔开的参数序列,用三个点(...
)表示
翻译成代码:
// 直接输出数组
console.log([1,2]); // [1,2]
// 输出参数序列
console.log(...[1,2]); // 1,2
再看来一个例子 … 后面用字符串和对象看看效果
// 字符串
console.log(...'sfsaf'); // s f s a f
// 对象
console.log(...{
a:'s'});
// Uncaught TypeError: Found non-callable @@iterator
可见(…) 除了数组可以使用之外还可以分割 字符串,但是有些对象不能使用直接打印;为什么?
含义理解二:(广义)扩展运算符 … 只要具有Iterator接口的对象,都可以使用扩展运算符 如 map对象,也就是没有在内部实现Iterator接口的对象都不能使用 … 扩展
2. 扩展运算符(…)运用
2.1 Math.max()求数组的最大值
Math.max(...[14, 3, 77]) // 77
2.2 在数组尾部添加数组和合并数组
// 在arr1 数组后面添加arr2
let arr1=['1','2','3'];
let arr2 =['4','5','6'];
arr1.push(...arr2);
// ["1", "2", "3", "4", "5", "