如何获取没有length属性的数组长度

时间:2014-12-30 12:17:32

标签: javascript arrays

即使我们可以使用array.length获取数组长度,但在下面的情况下可能会出错..

var a = [2, 4, "bang", undefined, NaN, 5]; 
a.length = 0; 
document.write(a.length);  

如果数组已定义其他属性,则使用for in进行计数也可能出错。

那么有没有办法动态获取数组长度?

3 个答案:

答案 0 :(得分:2)

调用

a.length = 0;

删除数组中的所有元素

console.log(a[2]) // undefined

因此,您的数组不再包含任何元素。

还要记住,将不可强制化的属性设置为整数(a.something = 'blah')不会影响length属性。

答案 1 :(得分:1)

如果你这样做,a.length = 0,它将删除所有数组元素,长度将为0.它是否显示任何其他值?

答案 2 :(得分:1)

a.length始终是正确的。 a.length = 0; TRUNCATES来自数组的所有数据。

相关问题