2011-04-30 56 views
5

的不明财产,如果我有一个JSON对象是这样的:的JavaScript/JSON:获取一个对象

{ 
    "message": { 
     "name": { "stringLengthTooShort": "blub" } 
    } 
} 

属性(在这里)stringLengthTooShort正在改变每一次的名称, 我怎么能简单地只得到儿童财产name与JS? 目前我有message.name但我怎么能现在得到它的孩子?

回答

6

,如果它总是的message.name第一属性,你可以这样做:

var keys = []; 
for (var l in message.name) { 
    if (message.name.hasOwnProperty(l)){ 
    keys.push(l); 
    } 
} 
//=>first property value should now be in message.name[keys[0]]); 
// (its label is keys[0]) 
+1

在新的浏览器,你可以使用['Object.keys'](https://developer.mozilla.org/ en/JavaScript/Reference/Global_Objects/Object/keys):'message.name [Object.keys(message.name)[0]]' – user123444555621 2011-05-01 14:36:57

+0

@ Pumbaa80我知道,但我喜欢提供交叉浏览器解决方案,甚至IE9也不支持为这样好和方便的方法。 – KooiInc 2011-05-01 14:44:59