gpt4 book ai didi

javascript - 在嵌套数组中按键查找

转载 作者:IT王子 更新时间:2023-10-29 02:55:47 27 4
gpt4 key购买 nike

假设我有一个对象:

[
{
'title': "some title"
'channel_id':'123we'
'options': [
{
'channel_id':'abc'
'image':'http://asdasd.com/all-inclusive-block-img.jpg'
'title':'All-Inclusive'
'options':[
{
'channel_id':'dsa2'
'title':'Some Recommends'
'options':[
{
'image':'http://www.asdasd.com' 'title':'Sandals'
'id':'1'
'content':{
...

我想找到一个id为1的对象。有这样的函数吗?我可以使用 Underscore 的 _.filter 方法,但我必须从顶部开始向下过滤。

最佳答案

递归是你的 friend 。我更新了函数以说明属性数组:

function getObject(theObject) {
var result = null;
if(theObject instanceof Array) {
for(var i = 0; i < theObject.length; i++) {
result = getObject(theObject[i]);
if (result) {
break;
}
}
}
else
{
for(var prop in theObject) {
console.log(prop + ': ' + theObject[prop]);
if(prop == 'id') {
if(theObject[prop] == 1) {
return theObject;
}
}
if(theObject[prop] instanceof Object || theObject[prop] instanceof Array) {
result = getObject(theObject[prop]);
if (result) {
break;
}
}
}
}
return result;
}

更新了 jsFiddle:http://jsfiddle.net/FM3qu/7/

关于javascript - 在嵌套数组中按键查找,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15523514/

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