Chrome的控制台需要几秒钟才能打印整数数组元素?

时间:2016-10-14 07:25:19

标签: javascript google-chrome

我将首先在Chrome控制台中创建一个10M大小的数组a

n=10000000;
a=[];
for (let i=0;i<n;++i) {a.push(i);};

然后我想查看a[5]的值,所以我只是在控制台中输入“a[5]”。

我希望控制台立即返回“5”。令我惊讶的是,在控制台上看到“5”需要大约3秒钟,Chrome进程在3秒钟内使用了近100%的单个CPU内核和几百兆字节的内存。

如果我继续在控制台中输入“a [5]”。经过几次“慢响应”,就可以了。那时[6],[100],[999999]也没问题。但是“a [1] + a [2]” - 再次非常缓慢。似乎对于每个表达结构都会有一些“预热时间”。

编辑:当响应缓慢时,探查器显示如下:

6114.8 ms 78.31 %   6115.5 ms 78.32 %   getCompletions(program):1   
777.5 ms 9.96 % 777.5 ms 9.96 % (garbage collector) 
708.8 ms 9.08 % 792.3 ms 10.15 %    getCompletions(program):1   
106.6 ms 1.37 % 106.6 ms 1.37 % (program)   

为什么数组访问和显示命令会触发几秒钟执行“getCompletions”?

的信息: 我有Chrome(53.0.2785.143 m(Windows 64位))和8GB RAM。

0 个答案:

没有答案
相关问题