同时解构数组及其属性

Destructuring an array and its properties at the same time

是否可以在解构数组元素的同时将其某些属性解构为对象?

例如,以下代码编译但未给出预期结果:

const array = [1, 2, 3]
array.myvalue = 'test'

function f([a, b, ...{ myvalue }]) {
  console.log(a, b, myvalue);
}

f(array)

输出:

1 2 undefined

您可以使用想要的索引和命名的 属性.

解构对象

function f({ 0: a, 1: b, myvalue }) {
    console.log(a, b, myvalue);
}

const array = [1, 2, 3]

array.myvalue = 'test'

f(array)