Thierry Schellenbach씨가 자신의 Prototype 응용프로그램에서
요점은 단순합니다:
from Some more JavaScript performance tips on Ajaxian
console.profile() / console.profileEnd()
를 실행해본 후에 Prototype 응용프로그램에서의 JavaScript 성능 향상팁에 대한 글을 작성했습니다.요점은 단순합니다:
- $$와 이벤트 바인딩에 주의할 것
- 다른 Prototype 메소드에 주의할 것(innerHTML과 element.update() 간데는 40배나 차이가 난다는 보고가 있습니다)
- document.createElement 대신 innerHTML 을 이용해서 작성할 것
- for in 루프 대신 for 루프를 사용할 것
- 문자열 합치기에 += 대신 Array.join 을 사용할 것 1
- 변수와 함수를 캐시할 것
- eval의 사용을 제한할 것
- Try Catch 구문의 사용을 제한할 것
- DOM을 다룰 때는 엘리먼트 밖에서 DOM을 변경하고 다시 집어넣을 것(DOM 안에서 변화시키면 브라우저가 그 때마다 화면을 다시 그리려고 시도해서 느려질 수 있습니다)
from Some more JavaScript performance tips on Ajaxian
- 사실 이 부분은 IE에만 해당하는 것 같습니다. IE가 스트링 버퍼를 제대로 다루지 못해서 += 를 계속할 때와 Array.join 을 사용할 때의 속도차이가 많이 나는 것입니다. 다른 브라우저에서는 반복되는 += 를 알아서 잘 최적화 해주기 때문에 크게 속도차가 나지 않습니다 [본문으로]
'[IT] Web Tech' 카테고리의 다른 글
IE8과 크로스 도메인 메시징 (0) | 2008.05.26 |
---|---|
Webmonkey 돌아오다! (0) | 2008.05.26 |
dojox.lang.aspect : 가로채기 그 이상 (0) | 2008.05.26 |
Tamarin으로 Spidermonkey 추적하기 (0) | 2008.05.26 |
Prototype의 JavaScript 성능향상 팁 몇가지 (0) | 2008.05.22 |
Cubespace : 정육면체 픽셀로 만드는 재미 (2) | 2008.05.22 |
datepicker 컨트롤 기능 추가 (0) | 2008.05.22 |
Spring WebFlow 2.0; JavaScript 모듈 릴리스 (0) | 2008.05.22 |
초기 탑재량 분산 : 모든 JavaScript를 한 파일로 만들지 않는 이유 (0) | 2008.05.22 |
댓글을 달아 주세요