js-展开运算符

79 阅读1分钟

针对可迭代对象展开

可以理解为伪数组(nodeList,arguments)

const number=[1,23,4,55,19,96]
const newNumber=[123,...number,...number,666]
console.log(newNumber)


VM398:3 [123, 1, 23, 4, 55, 19, 96, 1, 23, 4, 55, 19, 96, 666]

针对普通对象展开

  • 将对象进行展开
const obj1={
    a:1,
    b:2
}

const obj2={
    b:3,
    c:4
}

const newObj={
    ...obj1,
    ...obj2
}

console.log(newObj)


VM918:16 {a: 1, b: 3, c: 4}
  • 将数组进行展开
const number=[1,23,4,55,19,96]
const obj={
    ...number
}
console.log(obj)

VM1190:5 {0: 1, 1: 23, 2: 4, 3: 55, 4: 19, 5: 96}

剩余参数和展开运算符不是一个意思,剩余运算符是对数据收集使用,而展开运算符是将数据展开拿出使用