javascript - 当数组超过一定大小限制时,node.js 会大幅减速

标签 javascript css arrays node.js

我遇到了一个问题,我正在使用一个名为 postcss 的库,它正在对 css 进行标记并将这些标记放入数组中。如果数组中的标记数是 114456,则代码会立即执行,但如果我再添加一个选择器,它会在数组中添加更多标记,总共 114468 个标记,那么相同的代码会减慢很多。 token 完全相同,并且不会进入不同的代码路径。

这是要点 https://gist.github.com/ankurp/e64e9aa2dbcfe0350963 在要点中,调用的代码是函数,显示了两个 css 文件。慢的一个比另一个多了一个 css 选择器。

如果数组大于 114456,问题似乎就开始了。这是 nodejs 中的某个神奇数字吗?是否有加快速度的技术?

最佳答案

我偶然发现了一个通过使用 Array() 而不是 [] 实例化数组来加速函数的解决方案,但不确定为什么这个小差异会导致速度变慢从一秒到大约一分钟。

关于javascript - 当数组超过一定大小限制时,node.js 会大幅减速,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27140838/

相关文章:

php - 使用 Javascript 在客户端机器上监听套接字

javascript - 在 Angular JS 1.x 中动态更改输入数字元素的验证模式的最佳方法是什么?

网页背景

Css opacity one two div with negative margin

javascript - 具有多种文本颜色的 Div

c++ - 在结构中定义固定大小的数组

javascript - 使用 jQuery/Javascript 发射子弹

javascript - sweet.js 宏名称中的转义括号

c - c语言中如何初始化数组?

arrays - 为什么在 Perl 中将列表引用分配给数组变量有效?