【发布时间】:2018-08-07 18:54:55
【问题描述】:
在过去的几个月里,我一直在努力更好地理解 javascript。这绝对让我想获得计算机科学学位。无论如何,我很遗憾地遇到了两个与 JavaScript 相关但相互冲突的问题。
根据this article,不应该预先填充数组,而是在需要时增加它。
这听起来很棒,直到我遇到另一个 article on wikipedia 说执行上述操作会很慢。
我正在考虑从头开始制作一些游戏,并且作为代码素食主义者,我计划将性能放在我努力的最前面。 那么,拥有一个增长的数组还是一个预先分配的数组更好? 在 HTML5 游戏开发中,建议使用对象池之类的东西,我倾向于使用数组来创建它。
【问题讨论】:
-
不要在 JS 中预填充数组,让解释器为你处理。维基百科文章正在讨论如何最好地处理动态数组的非常低级的权衡,所有这些 JS 都会为您处理
-
还要注意,预填充和预分配是两个不同的东西。
-
@Hamms 你能详细说明一下吗?
-
预分配意味着初始化一个数组,里面有你想要的空间:
new Array(arrayLength)。预填充意味着初始化一个数组,然后用值填充它:new Array(arrayLength).fill(initialValue)
标签: javascript arrays performance v8