C#에 대해 비슷한 질문이 있지만 JavaScript에 대한 내용이 없습니다.JavaScript 루프 외부에서 변수를 선언 할 때 속도와 메모리가 도움이됩니까?
루프 내에서 변수를 선언하는 것이 허용됩니까?
반복 횟수가 200 회라고 가정합니다.
샘플 1보다 샘플 2를 사용하는 데 성능이 중요합니까 (메모리 및 속도)? 우리는 jQuery를 사용하여 루프를 작성합니다. 루프 내에서 var를 유지하는 코드 가독성이 향상되지만, 모범 사례가 아니거나 성능이 현저하게 떨어지거나 메모리 사용량이 늘어난다면 바꿀 것입니다.
**Sample 1:**
$(this).each(function() {
var i = $(some_div).clone();
*** edit i ***
$(another_div).append(i);
});
**Sample 2:**
var i = null;
*** edit i ***
$(this).each(function() {
i = $(some_div).clone();
$(another_div).append(i);
});
왜 이것을 측정하지 않습니까? –
@ Crashalot : 샘플 1에서 각 반복마다 변수가 만들어집니다. 샘플 2에서는 변수가 재사용됩니다. 성능 테스트를 해봤습니까? –
아니요,이 패턴이 확립 된 패턴이어야하므로 모범 사례를 듣는 것이 궁금합니다. 우리는 var가 재사용되기 때문에 성능 이득이 있다고 가정하지만 상당한 이점이 있는지 궁금해합니다. vars가 루프 안에 있으면 코드를 읽는 것이 더 간단하지만 속도와 메모리 성능에 외부 선언이 필요한 경우 우리는 그렇게 할 것입니다. – Crashalot