2
我有一个从JSON
解析的对象,并且它始终只包含一个属性,但此属性的名称(即密钥名称)会因每个JSON
msg而发生更改。访问IE8中对象的唯一属性+
在IE9 +等现代浏览器,我可以使用:
value = msg[Object.keys(msg)[0]];
访问此属性的值。但是,IE8不支持keys
,那么访问该值的完全兼容方式是什么?
我有一个从JSON
解析的对象,并且它始终只包含一个属性,但此属性的名称(即密钥名称)会因每个JSON
msg而发生更改。访问IE8中对象的唯一属性+
在IE9 +等现代浏览器,我可以使用:
value = msg[Object.keys(msg)[0]];
访问此属性的值。但是,IE8不支持keys
,那么访问该值的完全兼容方式是什么?
你可以定义这样一个函数:
function getVal(obj) {
for (var key in obj) return obj[key];
}
,然后做
value = getVal(msg);
当心,如果你这样做扩展对象原型的。使其与扩展的Object.prototype一起工作,我会赞成。 –