2010-09-21 56 views
14

说我有这样的:JavaScript:从对象中检索键名?

var x = { 
      a:{a1:"z", a2:"x"}, 
      b:{b1:"y", b2:"w"} 
} 

有没有办法来遍历X获得 “A” 和 “B”?

我想要会员名称,而不是其内容(我不想得到{a1:"z", a2:"x"})。

感谢

回答

27
var names = []; 
for(var key in x) { 
    if(x.hasOwnProperty(key)) { 
     names.push(key); 
    } 
} 
alert(names.join(', ')); //a, b 
+9

+1'.hasOwnProperty()'! – jwueller 2010-09-21 20:27:18

+0

-1用于未定义的'k'! – 2010-09-21 20:28:30

+4

伙计们,对于未定义的'k'错字感到抱歉。我**意味着**'钥匙'。 :) – 2010-09-21 20:29:46