다음과 같은 for문을 최적화를 시켜 보겠다.
for(var i=0; i<myarray.length; i++){
}
위 패턴의 문제점은 루프 순회시마다 배열의 length에 접근해야한다.
이를 최적화하면 아래와 같다.
for(var i=0, max=myarray.length; i<max; i++){
}
위와 같이하면 length값을 한번만 구하고 루프를 도는 동안 이 값을 사용한다.
이를 더 최적화를 해본다면 아래와 같다.
var i, myarray=[];
for(i=myarray.length; i--;){
}
var myarray=[],
i=myarray.length;
while(i--){
}
위와 같이 하면 변수 max를 사용하지 않아 변수가 하나 줄게되고
카운트를 거꾸로 하여 0으로 내려가게되는 방법이다.