在对象中搜索值

时间:2017-08-29 15:38:44

标签: javascript arrays object

我有以下对象我不知道如何继续。

Object image

如何浏览所有对象并选择内容 数组搜索值x 。当值x在对象中时,我需要从找到值的对象中获取对象标题

任何人都可以给我一个如何解决这个问题的提示吗?

3 个答案:

答案 0 :(得分:1)

您可以使用for...in来迭代对象键,然后使用常规for循环来检查content数组中的特定值:

function findTitle(x) {
    for (var key in obj) {
        for (var i = 0; i < obj[key].content.length; i++) {
            if (obj[key].content[i] === x) {
                return key;
            }
        }
    }
}

答案 1 :(得分:1)

您可以使用for ... in迭代对象和indexOf()以检查数组内容中是否存在密钥。像这样的东西:

function searchVal(x){
     for(var key in obj){
         if(obj[key].hasOwnProperty('content') && obj[key].content.includes(x))
             return key;
     }
}

答案 2 :(得分:0)

ah

您可以找到主obj的 Objects值中的第一个对象,该对象具有属性 content ,其中包含< / em> x,然后获取该对象的名称。