如果我有这样的 JSON 对象:
{
"message": {
"name": { "stringLengthTooShort": "blub" }
}
}
属性的名称(这里)stringLengthTooShort
每次都在变化,我怎么能简单地name
用 JS 获取子属性?此刻我有message.name
,但我现在怎么可能得到它的孩子呢?
如果我有这样的 JSON 对象:
{
"message": {
"name": { "stringLengthTooShort": "blub" }
}
}
属性的名称(这里)stringLengthTooShort
每次都在变化,我怎么能简单地name
用 JS 获取子属性?此刻我有message.name
,但我现在怎么可能得到它的孩子呢?
如果它始终是 的第一个属性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])
编辑:这个答案九年后,所有现代浏览器都支持 es20xx,所以可以安全使用:
const obj = {
"message": {
"name": { "stringLengthTooShort": "blub" }
}
};
console.log(Object.keys(obj.message.name)[0]);