我有一个包含对象和数组的嵌套数据结构。如何提取信息,即访问特定或多个值(或键)?例如:var data = { code: 42, i...
我有一个包含对象和数组的嵌套数据结构。如何提取信息,即访问特定值或多个值(或键)?
例如:
var data = {
code: 42,
items: [{
id: 1,
name: 'foo'
}, {
id: 2,
name: 'bar'
}]
};
我如何访问 name
中的第二项 items
?
这个问题相当老了,所以作为当代的更新。随着 ES2015 的出现,有其他方法可以获取所需的数据。现在有一项称为 对象解构 ,用于访问嵌套对象。
const data = {
code: 42,
items: [{
id: 1,
name: 'foo'
}, {
id: 2,
name: 'bar'
}]
};
const {
items: [, {
name: secondName
}]
} = data;
console.log(secondName);
上面的例子 secondName
从 name
一个名为的数组中的键 items
,唯一的 ,
意思是跳过数组中的第一个对象。
值得注意的是,对于这个例子来说,它可能有些过度,因为简单的数组访问更容易阅读,但它在分解一般对象时很有用。
这是针对您的特定用例的非常简短的介绍,解构可能是一种不寻常的语法,刚开始很难习惯。我建议阅读 Mozilla 的解构赋值文档 以了解更多信息。