ES6中...的用法

2020-08-23  本文已影响0人  苹果咏
不定参数
function add(...a){
    console.log(...a)
}
image.png

这里面...就表示不定参数,该参数为一个数组,a为参数名,具体第几个可以用a[0]等表示,每个函数最多声明一个不定参数,而且一定要放在所有参数的末尾。

不定参数对arguments对象的影响

有不定参数,arguments对象包含所有传入的参数

function add(b,...a){
    console.log(...a)
    console.log(arguments[0],arguments[1])
}
image.png
展开运算符

可以获取数组中的所有数据

let values = [3,54,45,23,6453,324]
console.log(Math.max(...values))  //6453

还可以加参数

console.log(Math.max(...values,543545,43,54,23))  //543545

对象展开复制

const obj1 = {
  a: 10,
  b: 20
};

const obj2 = {
  ...obj1,
  c: 30
};
console.log(obj2);  //  {a: 10, b: 20, c: 30}

合并对象 类似于object.assign

const obj1 = {a: 10};
const obj2 = {b: 20};
const obj3 = {c: 30};

// ES2018
console.log({...obj1, ...obj2, ...obj3});    // → {a: 10, b: 20, c: 30}

// ES2015
console.log(Object.assign({}, obj1, obj2, obj3));    // → {a: 10, b: 20, c: 30}
上一篇 下一篇

猜你喜欢

热点阅读