问题描述
- javascript对象的各个属性采用什么样的数据结构组合在一起?
-
我的问题表达得够清楚吗?如果不够清楚看【】里:
【比如:
var obj={
a:1,
b:2,
c:3
};
obj这个对象的三个属性a,b,c在内存里是怎么存储的,比如是存在一个静态数组里,比如是存成一个链表而obj是表头。
我暂时想不出其他存储结构。
我觉得不会是存成静态数组,因为js允许随时对对象进行扩充或删除,如:obj.d=4;这样的话很不方便。而存成一个链表的话,当属性值很多时,查找属性的时候查找效率岂不会大打折扣?
会不会是有一个适中大小的静态数组,如果属性个数超过的数组大小的话就接上链表。
】我这个问题纯属个人瞎猜,这个问题到底存在不存在我都不甚清楚。如果根本不存在这个问题,我很惭愧。
我竟没有一个c币。哦,no!
解决方案
不同的js解释器可以有不同的实现。lz不必为这个问题操心了。
解决方案二:
这个浏览器自己管理的,关心这个没意义。
解决方案三:
解释器会自己维护,具体要看实现
解决方案四:
楼主还是比较关心怎么办
解决方案五:
以对象方式存储、对象以堆栈方式存储,最后指向基本的数据结果。
时间: 2024-10-22 02:32:21