我有以下 JavaScript 代码。我已经使用 new 关键字初始化了一个数组,因此创建了该数组对象的一个新实例。然后,我通过向数组添加元素来填充该数组。
然而我认为我犯了一个根本性的误解 - 代码的下一部分让我非常困惑,如果它不够清楚或者完全错误,请纠正我的术语。我已登录(beatles.length)
。我使用 length 属性来找出数组中有多少个元素。但为什么长度是一个属性而不是一个方法呢?
length 实际上不是 Array 对象可以调用的返回数值的方法吗?如果 length 不是一个方法那么为什么它是一个属性(属于数组对象的变量)?请简明扼要地解释一下这里的区别。
var beatles = new Array();
beatles[0] = "John";
beatles[1] = "Paul";
beatles[2] = "George";
beatles[3] = "Ringo";
console.log(beatles.length);
It is当您将元素推入数组对象时会增加或减少的属性。
例如我的(假)对象:
var myArray = function(){
this.length = 0;
this.push = function(itm){
this.length++;
// ^ doesn't do anything aside from increase length
};
};
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)