4
JavaScript中对象/数组的性能如何?(专门针对Google V8)
与JavaScript(特别是Google V8)中的数组和对象相关的性能非常有趣。我在Internet上的任何地方都找不到有关此主题的详尽文章。 我了解某些对象使用类作为其基础数据结构。如果有很多属性,有时将其视为哈希表? 我也了解有时将数组像C ++数组一样对待(即快速随机索引,缓慢删除和调整大小)。而且,有时将它们更像对象(快速索引,快速插入/删除,更多内存)。而且,也许有时它们以链接列表的形式存储(即慢速随机索引,开始/结尾处的快速删除/插入) JavaScript中数组/对象检索和操作的精确性能是什么?(专门针对Google V8) 更具体地说,它对性能的影响: 向对象添加属性 从对象删除属性 索引对象中的属性 将项目添加到数组 从阵列中删除项目 索引数组中的项目 调用Array.pop() 调用Array.push() 调用Array.shift() 调用Array.unshift() 调用Array.slice() 任何文章或更多细节的链接也将不胜感激。:) 编辑:我真的很想知道JavaScript数组和对象如何在后台工作。另外,在什么情况下 V8引擎“知道”要“切换”到另一个数据结构? 例如,假设我用...创建一个数组 var arr = []; arr[10000000] = 20; arr.push(21); 这到底是怎么回事? 还是...这呢... ??? var arr = []; //Add lots of items for(var i = 0; i < 1000000; i++) …