【发布时间】:2013-07-22 02:40:25
【问题描述】:
在此处查看示例:http://jsperf.com/map-vs-for-basic 相反,在 chrome 控制台中,我得到了相反的结果(map 有时比 for 循环快 6-10 倍)。我猜它会适得其反。
var input = [];
for(var i=0;i<10000;i++)input[i]=new Date(i);
var output = [];
function perform(value,index){
return value.toString()+index*index
}
console.time(1);output = input.map(perform);console.timeEnd(1);
// 1: 45.000ms
console.time(1);for(var i=0;i<input.length;i++)output[i]=perform(input[i],i);console.timeEnd(1);
// 1: 68.000ms
【问题讨论】:
-
本地方法应该是最快的,因为它是用本地浏览器语言 (c++) 编写的。然而,结果并不是很一致(半年前,大多数原生 ES5 实现要慢得多)。我讨论过同样的问题:stackoverflow.com/questions/14647470/…
标签: javascript performance for-loop map