对于这段代码,我想知道 javascript 中最好的方法是什么?
var output = foo +";"+bar;
或者
var output = new Array(foo,bar).join(";");
对于这段代码,我想知道 javascript 中最好的方法是什么?
var output = foo +";"+bar;
或者
var output = new Array(foo,bar).join(";");
这并不重要。
根据他们的基准,有些博客会宣传第一个或第二个。
但事实是 javascript 引擎经过大量优化和更改,因此您不会发现可重现和跨浏览器的大差异。
选择最易读的。一般是第一个。
如果你真的做了 10000 次推送的循环,请在你的真实代码中的客户浏览器上对其进行基准测试,并选择最好的,但前提是存在显着差异。不要忘记 javascript 很快。
http://jsperf.com/中有很多测试用例(例如http://jsperf.com/joint-vs-concat)。在那里你可以检查哪个更慢。根据我的经验,取决于用户的浏览器(更准确地说是 JS 引擎)。
根据我的说法,字符串连接比数组连接更快。看到这些测试用例
http://jsperf.com/array-join-vs-string-connect
http://jsperf.com/join-concat/2