ECMAScript6: 展开运算符
来自CloudWiki
用法1:转化为参数
展开运算符(...)在语法上与rest参数相似,它可以将一个数组转换为各个独立的参数。
function sum(a, b, c){ return a + b + c; } let arr = [1, 2, 3]; sum(...arr); console.log(sum(...arr));
用法2:复制数组
let arr1 = [1, 2, 3]; let arr2 = arr1; //arr2与arr1是同一个数组对象 let arr3 = [...arr1]; //arr3与arr1是两个不同的数组对象 arr1[0] = 4; console.log(arr2[0]); //arr2中的元素同时被改变,输出:4 console.log(arr3[0]); //输出:1
用法3:合并数组
let arr1 = ['a']; let arr2 = ['b', 'c']; let arr3 = ['d', 'e']; console.log([...arr1, ...arr2, ...arr3]); //[ 'a', 'b', 'c', 'd', 'e' ]*/
用法4:复制所有可遍历属性
let book = { tille: "Vue无难事", price: 98 } let bookDetail = {...book, desc: "a fine book"} console.log(bookDetail); //{ tille: 'Vue无难事', price: 98, desc: 'a fine book' }