가 나는 z는 내 인라인 함수와 동일한 범위에 생각하지 않습니다 그러나이인라인 자바 스크립트 콜백 함수의 상위 범위를 어떻게 얻을 수 있습니까?
function testfunction(runthis)
{
runthis();
}
function main()
{
var z = 15;
testfunction(function(){ alert(z); });
}
비슷한 있습니다. testfunction 또는 인라인 함수에 추가 매개 변수를 추가하지 않으면 인라인 함수가 main과 동일한 범위에 속할 수있는 방법이 있습니까? 나는 콜백 함수가 작동하도록 노력하고있어.
편집 : 위의 내용은 작동하지 않는 것 같은 위증 한 예라고 생각합니다. 그러나 여기에 http://pastebin.com/A1pq8dJR 인스턴스는 .call (this, parameters)을 추가하고 범위를 수동으로 설정하지 않으면 작동하지 않습니다 (정확히 어떤 일을하는지 확신 할 수는 없지만). 나는 이것이 imageLoaded 범위를 참조 할 것이라고 생각했을 것입니다 만, imageBoxCreate의 범위를 참조하고 있습니까? 아무도 왜 그걸로 일을 못해, 왜이 일을 고정 설명 할 수 있을까?
귀하의 의도를 더 잘 설명해 주시겠습니까? 위의 작업과 폐쇄 '덕분에'15 '경고. 나는 당신이 "같은 범위에 속함"이란 뜻을 이해하지 못합니다. – deceze
당신은 무엇을하려고합니까? 게시 된 코드로 '15'에 대한 경고 메시지가 나타납니다. –
함수 호출 후에 .call (this, parameters)을 입력하지 않으면 작동하지 않습니다. http://pastebin.com/A1pq8dJR 코드에 대한 링크입니다. – Macmee