如何在JavaScript中进行别名数组解构?

如何在JavaScript中进行别名数组解构?,javascript,typescript,Javascript,Typescript,我想知道是否可以解构(在我的例子中是x)数组并创建别名,以避免保留关键字的问题 这里有一个例子,但它给了我一个错误。你知道怎么解决吗?谢谢 const mk = (data) => data.map((x, idx) => { const [a, b, for:xxx, d] = x return { a, b, for:xxx, // I want create an ob

我想知道是否可以解构(在我的例子中是
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
        }
      })

在数组的上下文中,为:xxx解构
没有任何意义。这仅适用于具有
属性的对象(
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,
    }
  })

您正在混合对象和数组。您正在绑定在数组解构上使用别名

如果解构数组,则不需要别名

const x=[
“a”,
“b”,
“d”,
“为了”,
];
常数[
A.
B
D
xxx,
]=x;
console.log({
A.
B
xxx,
D

});使用引号<代码>{“for”:xxx}
只需将:
const[a,b,for:xxx,d]=x
替换为
const[a,b,xxx,d]=x