获取对象键数组
2022-08-29 23:12:58
我想将JavaScript对象的键作为数组获取,无论是在jQuery还是纯JavaScript中。
还有比这更冗长的方式吗?
var foo = { 'alpha' : 'puffin', 'beta' : 'beagle' };
var keys = [];
for (var key in foo) {
keys.push(key);
}
我想将JavaScript对象的键作为数组获取,无论是在jQuery还是纯JavaScript中。
还有比这更冗长的方式吗?
var foo = { 'alpha' : 'puffin', 'beta' : 'beagle' };
var keys = [];
for (var key in foo) {
keys.push(key);
}
使用 Object.keys
:
var foo = {
'alpha': 'puffin',
'beta': 'beagle'
};
var keys = Object.keys(foo);
console.log(keys) // ['alpha', 'beta']
// (or maybe some other order, keys are unordered).
这是 ES5 的一项功能。这意味着它适用于所有现代浏览器,但不适用于旧版浏览器。
ES5-shim 具有可以窃取的 Object.keys
的实现
你可以使用jQuery的$.map
。
var foo = { 'alpha' : 'puffin', 'beta' : 'beagle' },
keys = $.map(foo, function(v, i){
return i;
});