let arr1 = [1, 3, 5, 7, 9]
let arr2 = [2, 4, 6, 8, 10]
console.log(...arr1)
let arr1 = [1, 3, 5, 7, 9]
let arr2 = [2, 4, 6, 8, 10]
console.log([...arr1, ...arr2])
function sum(...nums) {
// 求和累加
return nums.reduce(perValue, currentValue) => {
// perValue 之前的值
// currentValue 当前的值
return perValue + currentValue
}
}
console.log(sum(1,2,5,8))
let person = {name: 'tom', age: 18}
console.log(...person)
// 这种形式可以用于克隆一个对象
let person = {name: 'tom', age: 18}
let personNew = {...person}
console.log('克隆后的对象', presonNew)
...
展开运算符应用到一个对象身上...
对象说明...
是不能展开对象的,必须要用对象包裹let person = {name: 'tom', age: 18}
console.log({...person}) // 这样就可以展开了
2. ...
结合 React
的 props
批量传参
// 这里的 {...person} 和下面 React 的 ...p 是不一样的
let person = {name: 'tom', age: 18}
let personNew = {...person}
// React {} 里面是赋值语句,因为是通过 React 和 babel 翻译过后就允许这样写了
ReactDom.render(<Person {...p}/>, doument.getElmentById('test'))
...
赋值并修改属性,也称合并对象let person = {name: 'tom', age: 18}
let personNew = {...person, name: 'jack'}
console.log(personNew) // {name: 'jack', age: 18}