我们使用()来调用函数,但是当我们在javascript中的onclick事件中附加函数时,我很困惑为什么我们只使用函数名。
function a(){
alert(0)
}
document.getElementById('btn').onclick=a
<input value="click" type="button" id="btn" />
答案 0 :(得分:8)
因为a()
执行该功能,而a
是对该功能的引用。如果你console.log(a)
,你会看到函数的代码
答案 1 :(得分:4)
因为我们当时不想调用该函数,所以我们只想为该属性分配一个引用,以便以后可以调用它 / em>在事件发生时开启。
这将不正确:
document.getElementById('btn').onclick = a();
它会立即调用函数 并将返回值赋给onclick
,即undefined
。所以当事件发生时什么都不会发生。
答案 2 :(得分:0)
var a = function () {
alert(0);
};
document.getElementById('btn').onclick = a
所以你可以按上述方法调用函数。将函数赋值给变量并从任何地方调用