同时解构数组及其属性

问题描述 投票:0回答:1

是否可以分解数组的元素,同时还可以分解作为对象的某些属性?

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

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

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

f(array)

输出:

1 2 undefined
javascript
1个回答
0
投票

您可以将对象作为具有所需索引和命名属性的销毁对象。

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

const array = [1, 2, 3]

array.myvalue = 'test'

f(array)
© www.soinside.com 2019 - 2024. All rights reserved.