【发布时间】:2018-07-03 19:50:32
【问题描述】:
我正在浏览这个问题的答案:Can I dispatch an action in reducer? 和this answer,我看到以下内容:
actionQueue = actionQueue.concat([asyncAction]);
本质上是一样的:
actionQueue.push(asyncAction);
(忽略concat调用正在创建一个新数组并将其重新分配给actionQueue,结果是相同的——一个附加了asyncAction的数组)。
最初,我认为它(也许)表现更好(不知何故),其他人显然想知道与他们在 jsperf 中击败我一样:Array .concat() vs. .push()。
正如 jsperf 测试的结果所示,concat 方法明显比push 慢(至少就 Chrome 而言)。
我有什么遗漏吗?
在这个用例中是否有理由首选concat?
【问题讨论】:
-
我相信这一切都与
immutability有关
标签: javascript arrays performance