2014-02-24 39 views
1

找到一個對象比方說,我的JSON響應如下所示:在JSON數組由elemnt

{_id: Object, 
foo: [ 
    object0: { 
     content: "ipsum", 
     bar: true, 
    }, 
    object1: { 
     content: "ipsum", 
     bar: false 
    } 
] 

我將如何顯示objectbartrue

(如{{response.object.where(bar === true).content}}東西)

+0

一般來說,你總是可以遍歷的對象,直到找到一個地方'欄=== TRUE'。但是可能有更好的方法來做到這一點,所以我會等待看看是否有其他人回答。 –

回答

3

由於foo是對象的數組,循環和檢查可能是你最好的選擇:

for (var i = 0; i < obj.foo.length; i++) { 
    if (obj.foo[i].hasOwnProperty("bar") { 
     if (obj.foo[i].bar == true) { 
      //obj.foo[i].bar is true, do something! 
     } 
    } 
} 
2

tymeJV的答案是技術上正確的答案。除此之外,我建議您開始使用underscore.jsLo-Dash作爲通用庫。

例如,使用lodash找吧:

var barObject = _.find(obj.foo, { bar: true }); 
if (barObject) { 
    // Do your thing 
} 
+0

哇,謝謝! – goo