2017-09-01 95 views
-2

我想解析一个包含数组的对象。我需要在那里language"en"对象,提取对象数组的对象

"translations": [ 
     {"languageCode": "id","value": "Program Televisi"}, 
     {"languageCode": "ms","value": ""}, 
     {"languageCode": "ar","value": "تليفزيون"}, 
     {"languageCode": "en","value": "Television"} 
    ] 
}, 
"subgenre": { 
    "id": 227, 
    "translations": [ 
     {"languageCode": "id","value": "Sports"}, 
     {"languageCode": "ms","value": ""}, 
     {"languageCode": "ar","value": ""}, 
     {"languageCode": "en","value": "Sports"} 
    ] 
} 

我不想做这种方式:

translations_array.forEach(function (obj1, i) { 
    if (obj1.languageCode === 'en') { 
    return obj1.value.toString(); 
    }       
}); 

相反,我宁愿喜欢直接取东西:

translations[].value[languageCode='en'] 
+1

仅供参考这与JSON没有任何关系。我已经对问题和标题进行了修改 –

+0

...更好的布局显示你已经完成了第一个数组的ID和密钥。不影响答案。 – Jamiec

+0

@Jamiec:我猜你已经找到了更好的重复目标? – Cerbrus

回答

1

使用Array.find:

let languageObj = translations.find(obj => obj.languageCode === 'en') 
+0

非常感谢,简单而... –