use*_*820 288 javascript
我有一个像JavaScript的对象
var obj = {
key1: 'value1',
key2: 'value2',
key3: 'value3',
key4: 'value4'
}
Run Code Online (Sandbox Code Playgroud)
如何获取此对象中的长度和键列表?
Anu*_*rag 617
var obj = {
key1: 'value1',
key2: 'value2',
key3: 'value3',
key4: 'value4'
}
var keys = Object.keys(obj);
console.log('obj contains ' + keys.length + ' keys: '+ keys);
Run Code Online (Sandbox Code Playgroud)
它现在支持大多数主流浏览器.
zed*_*xff 336
var obj = {
key1: 'value1',
key2: 'value2',
key3: 'value3',
key4: 'value4'
};
var keys = [];
for (var k in obj) keys.push(k);
alert("total " + keys.length + " keys: " + keys);
Run Code Online (Sandbox Code Playgroud)
mik*_*dge 25
Underscore.js使转换非常干净:
var keys = _.map(x, function(v, k) { return k; });
Run Code Online (Sandbox Code Playgroud)
编辑:我错过了你也可以这样做:
var keys = _.keys(x);
Run Code Online (Sandbox Code Playgroud)
cry*_*ryo 18
如果您只想要特定于该特定对象的键而不是任何派生prototype
属性:
function getKeys(obj) {
var r = []
for (var k in obj) {
if (!obj.hasOwnProperty(k))
continue
r.push(k)
}
return r
}
Run Code Online (Sandbox Code Playgroud)
例如:
var keys = getKeys({'eggs': null, 'spam': true})
var length = keys.length // access the `length` property as usual for arrays
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
336215 次 |
最近记录: |