为什么字符串串联比数组连接更快?
今天,我读了这个关于字符串串联速度的帖子。
令人惊讶的是,字符串串联是赢家:
结果与我的想法相反。此外,有很多关于此的文章对此进行了相反的解释。
我可以猜测浏览器已针对最新版本进行了优化,但是它们是如何做到这一点的呢?我们能说在连接字符串时使用更好吗?concat
+
更新
因此,在现代浏览器中,字符串串联经过优化,因此使用符号比使用符号更快,当您想要连接字符串时。+
join
但是@Arthur指出,如果您实际上想要用分隔符连接字符串,则速度更快。join
更新 - 2020
Chrome:数组几乎是字符串连接 请参阅:https://stackoverflow.com/a/54970240/984471join
2 times faster
+
请注意:
- 阵列更好,如果你有
join
large strings
- 如果我们需要在最终输出中生成,最好使用字符串concat,否则使用数组将需要在最后进行几次数组到字符串的转换,这是性能过载。
several small strings
+