spread[扩展]
1、将数组展开成函数的多个参数
传统apply方法
function fn(x, y, z) {}
var args = [1, 2, 3];
fn.apply(null,arg)
ES6-spread
function fn(x, y, z){}
var args = [1, 2, 3];
fn(...args);
2. 合并数组
传统的合并两个数组要通过数组方法concat、splice、push等方法
ES6-spread合并数组
var parts = ['shoulder', 'knees'];
var lyrics = ['head', ...parts, 'and', 'toes'];
3. 类数组对象转数组
arrayLike to array
var nodeList = document.querySelectorAll('div');
var array = [...nodeList];
4. 数组深拷贝
var arr = [1,2]
var arr2 = arr // arr === arr2
var arr3 = [...arr] // arr !== arr3
5. 字符串转数组
rest[剩余]
function animals(…types){
console.log(types)
}
animals(‘cat’, ‘dog’, ‘fish’) //[“cat”, “dog”, “fish”]总结:
当…作为函数实参或=号右侧时用作spread运算符
当…作为函数形参或=号左侧时用作rest操作符
深圳 · 龙岗 · 大运软件小镇22栋201
电话:400 182 8580
邮箱:szhulian@qq.com