2010-05-19 10 views
7

익명 함수를 다른 함수에 전달하려고합니다.하지만 원하는대로 작동하지 않는 것 같습니다.Javascript에서 함수를 인수로 전달하고 호출하는 방법은 무엇입니까?

코드를 첨부 했으므로 내가 할 일을 더 잘 알 수 있다고 생각합니다.

함수를 인수로 성공적으로 전달한 다음이를 호출하려면 어떻게합니까?

<script language="javascript" type="text/javascript"> 
function do_work(success) { 
    success; 
} 

do_work(function() { 
    alert("hello") 
}); 

</script> 
+3

'language' 속성은 [deprecated] (http://www.w3.org/TR/REC-html40/)입니다. interact/scripts.html # edef-SCRIPT). –

+0

기다려주십시오! 더 이상 vbscript를 의미하지 않습니까? ;)) –

답변

14

당신은 실제로 함수를 호출해야합니다 : 당신은 또한) (을 적용 를 호출 할 수 있도록

function do_work(success) { 
    success(); 
} 
+0

고마워요! 나는 그것이 단순해야만한다는 것을 알았다. –

0

변수 성공Function의 "인스턴스", 즉 당신에게 수 범위를 재정의하려면

function do_work(success) { 
    var foo = { 
     bar : "bat"   
    } 
    success.apply(foo); 
} 

do_work(function() { 
alert(this.bar) 
}); 
관련 문제