我有一个嵌套数组,并且我知道人的ID(person.id),但正在尝试查找对象的ID。如此有效的“父母” ID。
{
{
"id": "12345",
"person": {
"id": "435345345345345",
"first_name": "Jim",
"last_name": "Smith",
},
{
"id": "56789",
"person": {
"id": "3434534534543",
"first_name": "Tony",
"last_name": "Black",
},
}
这将返回该人
const id = this.people.find(person => person.id === myid)
{
"id": "435345345345345",
"first_name": "Jim",
"last_name": "Smith",
},
但是,我看不到获取ID的明显方法(12345)。我查看了所有标准数组函数,但似乎没有什么合适的。
答案 0 :(得分:3)
您可以使用Array.find()
方法!
var myid = '435345345345345';
var users = [
{
"id": "12345",
"person": {
"id": "435345345345345",
"first_name": "Jim",
"last_name": "Smith",
}
},
{
"id": "56789",
"person": {
"id": "3434534534543",
"first_name": "Tony",
"last_name": "Black",
},
}
];
var result = users.find(obj => obj.person.id === myid);
console.log('Object: ' + result);
console.log('Required ID: ' + result.id);
答案 1 :(得分:0)
我知道您可能希望坚持使用标准库,但可以尝试使用lodash的发现https://lodash.com/docs/4.17.10#find
下面是返回整个对象的示例: