我有一个由无限数量的对象组成的数组。这些对象具有相同的结构。如果我 console.log 我的整个数组,我会得到如下信息:
[对象], [对象], [对象], ecc...
每当我在数组中推送一个新对象时,我也可以实现一个计数器,或者我可以使用普通的 for 循环来计算对象。没有更有效的方法来计算所有对象吗?
为什么 array.length 不起作用?
我有一个由无限数量的对象组成的数组。这些对象具有相同的结构。如果我 console.log 我的整个数组,我会得到如下信息:
[对象], [对象], [对象], ecc...
每当我在数组中推送一个新对象时,我也可以实现一个计数器,或者我可以使用普通的 for 循环来计算对象。没有更有效的方法来计算所有对象吗?
为什么 array.length 不起作用?
array.length
返回存储在数组中的元素数。
大多数 javascript 引擎将为数组对象原生实现有效的 .length 方法。您无需重复他们的努力。
如果你创建一个数组,你可以简单地访问myArray.length
来获取长度。
例子:
var myArray = [];
myArray.push({ 'id': 1, 'title': 'Who' });
myArray.push({ 'id': 2, 'title': 'What' });
myArray.push({ 'id': 3, 'title': 'Where' });
myArray.push({ 'id': 4, 'title': 'Why' });
alert(myArray.length); //should be 4
您应该能够使用 object.length。考虑这个例子:
x = [[], function() { return ""; }, 3,document.createElement('div')]
alert(x.length);
为我打印“4” - 尝试使用您的数组,如果您在网络上使用 javascript,它应该将数组中正确数量的对象打印到浏览器窗口......(否则只需打印 x.length )
也许发布更多代码会有所帮助。哦,顺便说一句,不要使用“array.length”,而是使用“x.length”,假设 x 是名称或您的数组。