解构属性名称中包含连字符的对象

das*_*dsa 5 javascript

有没有办法让destructure对象的属性名称中包含连字符。我花了一段SyntexError时间这样做(这是合理的,因为 JS 不允许变量名带有 a hyphen)。

let human= {
    "first-name":"John",
    "last-name":"Doe",
    age:150
}

let {age}= human;
// let {"first-name"}= human;//error
// let {first-name}= human;//error

console.log(age)
Run Code Online (Sandbox Code Playgroud)

AKX*_*AKX 6

您可以使用冒号语法为属性名称添加别名。

let human = {
  "first-name": "John",
  "last-name": "Doe",
  age: 150
};

let { age, "first-name": firstName } = human;
console.log(age, firstName);
Run Code Online (Sandbox Code Playgroud)