2011-04-22 9 views
0
this.runThisFunctionOnCall = function(){ 



       //does something and ends up with these arrays of count 1 

       // arrays.length = 1 (always) 

    array1; 
    array2; 
    array3; 

    alert(array1.length); // shows 1 here 


    } 

다른 스크립트 페이지에서 아래에 설명 할 때 thaincludes는 내가 배열에 값이 없습니다. 당신이 기능을 외부에서 볼 수없는 그 함수의과를 가진 같은 또 다른 배열 1이 아닌 것을 당신의 낮은 코드에 배열 1에 이르게 있도록자바 스크립트 배열 반환

this.callingFunction = function(){ 

     this.runThisFunctionOnCall(); 
     alert(array1.length); shows 0 

} 
+4

변수 정의 및 정의 방법은 무엇입니까? 실제 코드를 더 많이 포함해야하는 경우 일 수 있습니다. – tvanfosson

+1

귀하의 질문은 무엇입니까? – capdragon

+1

'runThisFunctionOnCall'는 아무 것도 반환하지 않습니다. 그것은 전역 변수를 변경합니까? –

답변

3

변수 배열 1은 함수 runThisFunctionCall 내부의 지역 변수입니다 길이가 0 인 이유는 요소가 없기 때문입니다. http://www.webdevelopersnotes.com/tutorials/javascript/global_local_variables_scope_javascript.php3

+0

코드에 따르면 "변수 array1은 함수 runThisFunctionCall 내부의 로컬 변수입니다"는 단순히 잘못된 것입니다. "길이가 0"이되기 전에 "변수를 찾을 수 없습니다"예외가 발생합니다. 그래서 그것은 또한 올바르지 않습니다. –