同时解构数组及其属性
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)
是否可以在解构数组元素的同时将其某些属性解构为对象?
例如,以下代码编译但未给出预期结果:
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)