http://jsperf.com/for-vs-foreach/9 를 보고 forEach가 정말 그렇게 느려? 라고 생각이 들어서 node 커맨드라인을 열고 아래와 같이 처 넣고 실행. 어짜피 IE에서도 안되는거 Array를 prototype 확장하여 forEach 를 만들어서 쓰곤 했다. Array.prototype.forEach=function(callback) { for (var i=0,len=this.length; i<len; i++) { callback(this[i], i); } } 그래서 이것도 넣어서 같이 돌려봤다. -------------------------- var i, values = [], sum = 0; for (i = 0; i < 10000; i++) { values[i] = i; } function add(val) { sum += val; } var itercount =2000; sum=0; time = +new Date(); for (var _i=itercount; _i>=0; _i--) { values.forEach(add); } console.log("forEach legacy:"+ (+new Date()-time)); sum=0; time = +new Date(); for (var _i=itercount; _i>=0; _i--) { for (i = 0; i < values.length; i++) { add(values[i]); } } console.log("simple for:"+ (+new Date()-time)); Array.prototype.forEach2=function(callback) { for (var i=0,len=this.length; i<len; i++...
Meteor evangelist, IoT, Renoise, Lua, Javascript, Coffeescript