如何解构 es6 javascript 嵌套对象
How to destructure es6 javascript nested objects
我想在 es6 中构建对象但没有得到结果。
let animal ={
data:{
typee:{
title: "Cow",
legs:4
}
}
}
let {data:{typee:{title,legs}}}=animal;
现在 console.log(data)
给出输出 Error: data is not defined
。
我做错了什么?
解构嵌套对象时,不会将临时值分配给 consts/variables。您必须明确分配它们:
const animal = {"data":{"typee":{"title":"Cow","legs":4}}};
const {
data, // assign the data
data: {
typee, // assign the typee
typee: {
title,
legs
}
}
} = animal;
console.log(data, typee, title, legs);
let {data:{typee:{title,legs}}}=animal;
创建 title
和 legs
而不是 data
。如果您还想获得其他封装属性之一,则必须单独指定它:
//creates data along with title and legs
let {data, data:{typee:{title,legs}}}=animal;
console.log(data,title,legs);
我想在 es6 中构建对象但没有得到结果。
let animal ={
data:{
typee:{
title: "Cow",
legs:4
}
}
}
let {data:{typee:{title,legs}}}=animal;
现在 console.log(data)
给出输出 Error: data is not defined
。
我做错了什么?
解构嵌套对象时,不会将临时值分配给 consts/variables。您必须明确分配它们:
const animal = {"data":{"typee":{"title":"Cow","legs":4}}};
const {
data, // assign the data
data: {
typee, // assign the typee
typee: {
title,
legs
}
}
} = animal;
console.log(data, typee, title, legs);
let {data:{typee:{title,legs}}}=animal;
创建 title
和 legs
而不是 data
。如果您还想获得其他封装属性之一,则必须单独指定它:
//creates data along with title and legs
let {data, data:{typee:{title,legs}}}=animal;
console.log(data,title,legs);