2013-09-05 5 views
3

나는 다소 큰 자바 스크립트 응용 프로그램을 가지고 있으며 성능을 최적화하려고합니다. 작은 함수를 수천 번 실행하는 루프가있는 경우 호출 함수의 코드 별 함수를 멀리두면 성능에 영향을 미칩니 까? 고맙습니다.전체 성능에 미치는 기능 위치의 영향

+3

얼마나 멀리 있습니까? 그냥 알고 싶다면 ... – Joon

+1

1000 라인 이상 떨어져 있다면, 함수를 함수 호출에 더 가깝게 옮기는 것이 좋습니다. 이것은 물론 IE를 지원하는 것입니다. 그렇지 않으면 표준 호환 브라우저에서 함수 호출에 영향을 미치지 않습니다. – OozeMeister

+3

루프가 미국에 있고 유럽에서 기능이 있습니까? 그게 꽤 멀기 때문이야. – Joon

답변

7

루프에서 함수를 선언하거나 각 반복 후에 함수를 호출해도 차이가 없습니다. 나는 크기에 따라 각 함수와 변수가 지정된 위치에서 RAM에 공간을 생성한다는 것을 배웠다. JavaScript는 foo과 같은 이름을 지정하기 때문에 함수 또는 변수가 메모리에있는 위치를 알고 있습니다.

for(var i = 0; i < 1000; i++) foo(i); 
... Your 300 lines 
function foo(i) { 
    document.body.innerHTML += i+"<br />"; 
} 

또는

for(var i = 0; i < 1000; i++) { 
    document.body.innerHTML += i+"<br />"; 
} 

당신은 당신이 좋아하는 방법을 사용할 수 있습니다. 선언 된 함수는 메모리에서 고정 된 위치를 가지므로 어디에서나 호출 할 수 있습니다. 유럽에있는 경우 유럽에서 전화 할 수도 있습니다.

+0

실제로 질문에 답하고 유럽 주석을 포함 해 주어서 고맙다;) – OozeMeister

+1

OP가 유럽에서 ... 전화가 근무 시간 이후 나 근무 시간 중에 있습니까? – icedwater

+0

Ick, Timezone 문제는 말할 것도 없습니다. 유럽의 경우 – OozeMeister

관련 문제