2013-11-20 102 views
0

我有一個對象:如何選擇包含定義屬性的嵌套對象?

a = { 
    0: { 
     name: 'George' 
    } 
    1: { 
     name: 'James' 
    } 
    smth: { 
     notName: '16' 
    } 
} 

如何選擇包含財產name對象(0或1)?是否可以像這樣選擇它們:a.indexOf('["name"]')

+2

不,但您可以迭代外部對象的屬性並測試每個內部對象是否具有該屬性。 –

+0

Lodash可以輕鬆做到這一點。 – SLaks

回答

3

下面返回在嵌套對象name鍵列表,

var list = []; 
for (key in a) { 
    if (a[key].hasOwnProperty('name')) list.push(key); 
} 

列表應包含["0", "1"]