为什么这个对象解构不起作用?

wha*_*hat 5 javascript destructuring

语法看起来很适合 MDN,所以我不明白为什么这个对象解构不起作用。变量返回未定义,为什么?

  let obj={age: "3", name: "spike"};
  let {a,b}=obj;//returns a and b as undefined, why?
Run Code Online (Sandbox Code Playgroud)

Chr*_*tos 8

您需要使用nameandage作为从对象中解构的变量,如下所示:

let obj={age: "3", name: "spike"};
let {age, name}=obj;

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

或者,您可以使用以下语法为解构变量分配新名称:

let obj={age: "3", name: "spike"};
let {age: a, name: b}=obj;

console.log(a);
console.log(b);
Run Code Online (Sandbox Code Playgroud)