使用扩展运算符,让你的代码更加简单优雅

使用扩展运算符,让你的代码更加简单优雅

扩展运算符是什么

它是ES6中引入的一个运算符“...”,它可以把一个数组分割成一列由逗号组成的参数序列,可以被广泛地用于函数调用,数组复制,合并等情形,下面就来看看使用扩展运算符有哪些更优雅的写法吧:

更优雅的push操作

let a=[1,2,3];
let b=[4];
//旧写法
for(let i=0;i

更加方便的数组拷贝

let a=[1,2,3];
let b=[];
//旧写法
for(let i=0;i

更方便的数组合并

let array1 = [10,20];
let array2 = [50,60];
let newarray = [25];
//旧写法
newarray = newarray.concat(array1).concat(array2); //[ 25, 10, 20, 50, 60 ]
console.log(newarray);
//使用扩展运算符
newarray = [20,...array1,...array2]; //[ 25, 10, 20, 50, 60 ]
console.log(newarray);

代替字符串分割 split

let str = "盆盆儿WEB前端";
// 使用 split
let sp = str.split('');
console.log(sp);//[ '盆', '盆', '儿', 'W', 'E', 'B', '前', '端' ]
// 使用扩展运算符
sp = [...str];
console.log(sp);//[ '盆', '盆', '儿', 'W', 'E', 'B', '前', '端' ]

实现了 Iterator 接口的对象转为数组

let nodes = document.querySelectorAll('div'); 
let array = [...nodes]; 

可变参数函数的调用

// ES5 的写法 
function f(x, y, z) {
// ... 
}
var args = [0, 1, 2];
f.apply(null, args);
// ES6 的写法 
function f(x, y, z) {
// ... 
}
var args = [0, 1, 2];
f(...args);

这里就不再继续列举了,还有其他的,欢迎大家在评论区列出来。

PS:如果这篇文章让你学到了一点知识,欢迎点赞并关注我哦,每天一点技术干货,让我陪你在大牛的路上越走越远!!!


分享到:


相關文章: