반응형
프론트엔드 개발에서 성능 향상은 중요한 요소 중에 하나 입니다.
성능 향상을 위해 자바스크립트 함수 속도를 측정 할 수 있는 방법에 대해서 알려드리겠습니다.
console.time()
console.time();
doSomething();
console.timeEnd(); // default: 8007.467041015625 ms
console 의 static 메서드인 time을 이용해서 속도를 측정할 수 있습니다.
time 메서드 호출 이후, timeEnd 메서드를 호출하기까지의 시간을 계산해서 콘솔에 표시 해줍니다.
간단히 속도를 콘솔에서 확인할 수 있는 장점이 있지만,
콘솔에서만 확인할 수 있고, 데이터로 처리 하거나, 다른 방법으로 확인할 수 없는 단점이 있습니다.
performance.now()
var t1 = performance.now();
doSometing();
var t2 = performance.now();
console.log(`${(t2 - t1) / 1000} seconds.`)
performance.now() 는 웹 document가 시작된 이후로 시간을 나타냅니다.
함수 실행전의 시간과 함수 실행 후의 값을 변수에 저장 후에 뺀다면 함수 실행 속도를 구할 수 있습니다.
Date.now() 와의 차이점
Date.now()의 경우에 컴퓨터 시스템의 시계에 따라서 현재 시간을 나타냅니다.
만약 컴퓨터 시계를 조정하게 된다면 속도 계산이 다르게 발생할 수 있는 점이 있습니다.
728x90
반응형