我正在寻找替代版本Object.values()
功能。
As 此处描述 https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/valuesInternet Explorer 不支持该功能。
执行以下示例代码时:
var obj = { foo: 'bar', baz: 42 };
console.log(Object.values(obj)); // ['bar', 42]
它适用于 Firefox 和 Chrome,但在 IE11 中抛出以下错误:
对象不支持属性或方法“值”
您可以在这里测试一下:Fiddle https://jsfiddle.net/faxntykn/.
那么,什么是快速解决办法呢?
您可以使用以下方式获取键数组Object.keys()
然后使用map()
来获取值。
var obj = { foo: 'bar', baz: 42 };
var values = Object.keys(obj).map(function(e) {
return obj[e]
})
console.log(values)
使用 ES6,您可以使用箭头函数将其写在一行中。
var values = Object.keys(obj).map(e => obj[e])
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)