gpt4 book ai didi

javascript - 为什么在 Javascript 中使用类数组对象?

转载 作者:搜寻专家 更新时间:2023-11-01 04:43:33 25 4
gpt4 key购买 nike

我明白了,因为 javascript 允许对象使用数字键,因此从技术上讲,类数组对象的存在是可能的,但为什么它们会变得普遍呢?

也许我们的想法是这些类似数组的对象不只是有数字键,例如arguments 具有 callee 属性,因此它们不能是适合这些属性的数组。

但在 javascript 中,将数组视为对象并使用非数字键是完全有效的:

var myArguments = []; 
myArguments[0] = 0;
myArguments['callee'] = function(){console.log('callee')};

如果对象是类数组的,并且可以从访问函数中受益,否则它会从数组原型(prototype)继承,那么将它变成类数组对象会有什么好处呢?


编辑:如果我的问题不清楚,像对象这样的数组将类似于 arguments。具有从零开始的连续数字属性的对象,并且具有比最高数字键小一的长度属性。它也不从数组原型(prototype)继承,也不提供对数组方法的访问。

最佳答案

没有太大的优势,因为您可以用非常相似的方式访问对象和数组,array[number] 用于数组,object.propery,和 object["property"] 对象。在我看来,数组更适合存储数据,而不是函数,在我看来,对象更适合存储函数集。例如,数组可以存储您在内存游戏中的答案,但对象可以存储游戏的命令,例如开始或结束。

关于javascript - 为什么在 Javascript 中使用类数组对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44105556/

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