기본 콘텐츠로 건너뛰기

라벨이 for인 게시물 표시

javascript에서 forEach의 성능 문제

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++...