gpt4 book ai didi

javascript - JavaScript Array.length 属性是函数还是简单变量?

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:26:05 24 4
gpt4 key购买 nike

我有以下 JavaScript 代码。我已经使用 new 关键字初始化了一个数组,因此创建了数组对象的一个​​新实例。然后,我通过向数组添加元素来填充数组。

但是我认为我犯了一个根本性的误解——代码的下一部分让我非常困惑,如果不够清楚或者完全错误,请纠正我的术语。我已经记录了 (beatles.length)。我正在使用 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);

最佳答案

在您将元素插入数组对象时增加或减少的属性。

例如我的(假)对象:

var myArray = function(){
this.length = 0;

this.push = function(itm){
this.length++;
// ^ doesn't do anything aside from increase length
};
};

关于javascript - JavaScript Array.length 属性是函数还是简单变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14464506/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com