第一和第二个你只是传入函数本身作为callback,并不需要立即执行,第三个你输入的其实是function() {fun()}作为event handler,他也不是立即执行的,fun()只是函数题内执行的一部分,你可以改成window.onclick = fun
这里没有可以“立即执行”的,都是事件回调,写函数名或者函数表达式都是可以的,第3个例子只是在(匿名)函数表达式中调用了函数而已,实际执行还是需要有事件触发的。另外可能这种表达式的写法会比较多些,尤其是jq。
第一和第二个你只是传入函数本身作为
callback
,并不需要立即执行,第三个你输入的其实是function() {fun()}
作为event handler
,他也不是立即执行的,fun()
只是函数题内执行的一部分,你可以改成window.onclick = fun