我有类似下面的javascript代码来获取数组的大小,
var testvar = [ ];
testvar[1] = 2;
testvar[200] = 3;
alert(testvar.length); //201Run Code Online (Sandbox Code Playgroud)
但代码警告201提到了大小2,为什么?
我需要得到该数组中的总元素数.
Enj*_*ted 10
如果你想真正找到数组的长度,尽管做了这样的事情:
alert(Object.keys(testvar).length);
Run Code Online (Sandbox Code Playgroud)
https://jsfiddle.net/4Lqsf45a/
注意Object.keys()在IE <9中不可用.请参阅https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/keys了解变通方法
因为您在索引200处设置了值testvar[200] = 3.该length属性将是数组的最后一个索引+ 1.
要获取元素的总数,可以使用以下示例:
function countElements(arr) {
var numElements = 0;
for ( var indx in arr ) {
numElements ++;
}
return numElements;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
15090 次 |
| 最近记录: |