以下場(chǎng)景在chrome70版本可直接運(yùn)行勺卢,其他版本及瀏覽器未做驗(yàn)證践险,可能需要Babel轉(zhuǎn)換:
替換Apply的函數(shù)調(diào)用
// es5
var array1 = [1, 2, 3];
Math.min.apply(null, array1)
// 使用擴(kuò)展運(yùn)算符
var array1 = [1, 2, 3];
Math.min(...array1);
數(shù)組合并
// 數(shù)組合并
var array1 = [1, 2, 3];
var array2 = [4, 5, 6];
var array3 = [...array1, ...array2, 7, 8]; //[1,2,3,4,5,6,7,8]
array1.push(...array2 )// 當(dāng)然也可以使用concat等數(shù)組合并方法折汞,但是擴(kuò)展運(yùn)算符提供了一種新的方式
// 數(shù)組拷貝
var array1 = [1,2,3];
var array2 = [...array1];
console.log(array1 == array2) // false锅尘,但是不支持對(duì)象數(shù)組深拷貝
轉(zhuǎn)換類數(shù)組為數(shù)組井辜,比如arguments或者NodeList
// es5
var fn = function() {
console.log(Array.prototype.slice.apply(arguments));
}
fn(1,2,3)
//擴(kuò)展運(yùn)算符
var fn = function() {
console.log([...arguments]);
}
fn(1,2,3)