我想知道是否可以解构一个数组(在我的情况下为x
)并创建一个别名,以避免保留关键字出现问题。
这里有个例子,但这给我一个错误。知道如何解决吗?谢谢
const mk = (data) =>
data.map((x, idx) => {
const [a, b, for:xxx, d] = x
return {
a,
b,
for:xxx, // I want create an object with for property name
d
}
})
答案 0 :(得分:1)
在数组的上下文中,解构for: xxx
没有任何意义。这仅适用于具有for
属性(const {a, b, for: xxx, d } = x;
)的对象。
xxx
只是给定数组的第三个元素。
可以执行以下操作:
const mk = (data) =>
data.map((x: any, idx: any) => {
const [a, b, c, d] = x;
return {
a,
b,
for: c, // I want create an object with for property name
d,
}
})
答案 1 :(得分:0)
您正在混合对象和数组。您想在数组解构中使用别名。
如果您要解构数组,则不需要别名
[A-Za-z0-9_-]
如果要解构对象,则使用const x = [
'a',
'b',
'd',
'for',
];
const [
a,
b,
d,
xxx,
] = x;
console.log({
a,
b,
xxx,
d
});
没问题。
for