为什么内置函数不能与 Javascript 事件一起使用?
document.getElementById('test').onchange = alert("testing");
这不起作用,并且会立即触发。
相反,我必须将内置函数包装在函数中才能使其工作:
document.getElementById('test').onchange = function() { alert("testing"); }
这是为什么?
最佳答案
区别在于传递函数句柄与调用函数。
当您执行alert()时,您正在调用该函数,而不是传递它(从技术上讲,您传递的是该函数的结果)。
在第二种情况下,您不是调用该函数,而是定义一个新函数并返回它。
关于javascript - 为什么内置函数不能与事件一起使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23924569/