Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/463.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
哪个Javascript对象结构使用更少的内存?_Javascript_Performance_Memory_Memory Management_Javascript Objects - Fatal编程技术网

哪个Javascript对象结构使用更少的内存?

哪个Javascript对象结构使用更少的内存?,javascript,performance,memory,memory-management,javascript-objects,Javascript,Performance,Memory,Memory Management,Javascript Objects,当涉及到JavaScript对象、数组和内存使用时,下面哪种结构的内存效率更高 aa = [ {'a':1, 'b' : 2}, {'a':3, 'b' : 4} ] bb = { 'a' : [1,3], 'b' : [2,4] } aaa = [ {'a':1, 'b' : 2}, {'a':1, 'b' : 2}, {'a':1, 'b' : 2}, {'a':1, 'b' : 2}, {'a':1, 'b' : 2}, {'a':1, 'b' : 2}, {'a':1, 'b' : 2

当涉及到JavaScript对象、数组和内存使用时,下面哪种结构的内存效率更高

aa = [ {'a':1, 'b' : 2}, {'a':3, 'b' : 4} ]
bb = { 'a' : [1,3], 'b' : [2,4] }

aaa = [ {'a':1, 'b' : 2}, {'a':1, 'b' : 2}, {'a':1, 'b' : 2}, {'a':1, 'b' : 2}, {'a':1, 'b' : 2}, {'a':1, 'b' : 2}, {'a':1, 'b' : 2} ];
bbb = { 'a' : [1,1,1,1,1,1,1], 'b' : [2,2,2,2,2,2,2] };
由于各种原因,似乎很难准确测量对象在JavaScript中使用了多少RAM。然而,Chrome的新内存标签似乎可以帮助我们找到上面哪一个更好

aa
bb
的情况下,似乎
aa
使用的内存更少(我们是指保留的还是较小的大小)?很难说,因为创建该对象数组似乎同时创建其他对象

AA:

BB:

aaa
bbb
的情况下,
bbb
的对象大小似乎比
aaa
的对象数组小,但同样地,
aaa
中所有条目的总ram比
bbb
小,那么哪一个更有效

aa = [ {'a':1, 'b' : 2}, {'a':3, 'b' : 4} ]
bb = { 'a' : [1,3], 'b' : [2,4] }

aaa = [ {'a':1, 'b' : 2}, {'a':1, 'b' : 2}, {'a':1, 'b' : 2}, {'a':1, 'b' : 2}, {'a':1, 'b' : 2}, {'a':1, 'b' : 2}, {'a':1, 'b' : 2} ];
bbb = { 'a' : [1,1,1,1,1,1,1], 'b' : [2,2,2,2,2,2,2] };
AAA:

BBB:

开发人员似乎更喜欢使用对象数组,因为它更容易搜索(包括我自己),但我真的只想知道哪种结构在内存方面更有效

我的水平还不足以理解当JavaScript对象存储在内存中时会发生什么。由于内存的复杂性,内存管理已经被抽象化了(这要感谢所有使之成为可能的人……但是可怜的Chromium开发人员)