我有以下对象:
var l={"a":1,"b":2,"c":5};
Run Code Online (Sandbox Code Playgroud)
我想得到这个的长度
alert(l.length);
Run Code Online (Sandbox Code Playgroud)
但那又回来了undefined.显然,我希望得到3答案.
Eri*_*ric 11
您可以使用对象来计算对象中的条目数,该对象Object.keys()返回对象中的键数组:
var l = {a: 1, b: 2, c: 3};
Object.keys(l).length;
Run Code Online (Sandbox Code Playgroud)
但是,实现自己的属性可能更有效(和跨浏览器):
Object.length = function(obj) {
var i = 0;
for(var key in obj) i++;
return i;
}
Object.length(l);
Run Code Online (Sandbox Code Playgroud)
请注意,虽然我可以将函数定义为Object.prototype.length,允许您编写l.length(),但我没有,因为如果您的对象容器是键,那将失败length.
| 归档时间: |
|
| 查看次数: |
204 次 |
| 最近记录: |