gpt4 book ai didi

javascript - 在第一层嵌套对象数组javascript功能方式中获取数组对象

转载 作者:行者123 更新时间:2023-11-30 14:02:41 25 4
gpt4 key购买 nike

我想遍历一个嵌套的对象数组,如果满足条件,我想返回找到的对象所在的第一层的对象。

我怎样才能做到这一点?

我的尝试:

getLayoutByTableId(tableId: number) {
return this.layouts.map(function(layout) {
return layout.tables.filter(function (table) {
if (table.id === tableId) {
return layout;
}
});
})
};

返回满足条件的表对象。

嵌套对象数组:

[  
{
"id":31,
"stationId":31,
"tables":[
{
"id":652,
"number":"040",
"x":1285,
"y":527,
"length":98,
"breadth":69,
"rotation":0,
"shape":"rectangle",
"translateX":0,
"translateY":0,
"masterId":null,
"seats":4,
"groupingActive":false
},
{ ...
}
]
},
{ ...
}
]

最佳答案

您可以使用 Array.prototype.findArray.prototype.some使用现有的库函数来完成:

const data = [{id:31,stationId:31,tables:[{id:652,number:"040",x:1285,y:527,length:98,breadth:69,rotation:0,shape:"rectangle",translateX:0,translateY:0,masterId:null,seats:4,groupingActive:false},{}]},{}];

const getLayout = id => data.find(l => l && l.tables && l.tables.some(t => t.id === id));

console.log(getLayout(652));
console.log(getLayout(1111));

关于javascript - 在第一层嵌套对象数组javascript功能方式中获取数组对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56045379/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com