2011-09-11 3 views

답변

3

당신은 전화 또는 appy 수와 범위를 변경할 수 있습니다

function jCamp(code){ 
    function test(){ 
     alert(); 
    } 
    code.call(test); 
} 
jCamp(function(){ 
    this(); 
}); 

그래서 우리는 개인 기능을

+0

그랬습니다. 고마워! –

1

테스트() JCAMP()가 정의되지 않은 (당신은 당신의 코드를 변경하지 않을 경우 그 라인 8의 하나)에 인수되는 익명 함수 내에서 호출을. 함수 test()jCamp()의 정의 내에서만 정의됩니다.

+0

그렇다면 어쨌든 jCamp()의 인수 함수를 통해서만 함수를 호출 할 수 있습니까? –

0
function jCamp(code){ 
    this.test = function(){ 
     alert("test"); 
    } 
    code(); 
} 
jCamp(function(){ 
    this.test(); 
}); 

를 참조 this을 변경 내가 이런 식으로 할 것이다.

0

testjCamp에서만 사용할 수있는 전용 기능입니다. 인수로 전달 된 익명의 함수에서 호출 할 수 없습니다. 이처럼, 비록 속성 할 수 있습니다 : 그것은 그것이라고하지를 만들 때

function jCamp(code){ 
    this.test = function(){ 
     alert(); 
    } 
    code(); 
} 
jCamp(function(){ 
    this.test(); 
}); 
+0

'this'가'window'이므로 실제로'test'가 전역 적으로 저장된다는 것을주의하십시오. – delnan

0

함수의 범위가 결정된다.

관련 문제