调用函数时put()最后有什么问题?

0 javascript function parentheses

可能重复:
在JavaScript中,如果我用括号调用函数会有所不同吗?

这可能听起来很基本,但我真的不明白.

我尝试()从事件处理程序中取消它导致我的JavaScript网页中的错误,()在调用函数时放入和不放入最后的区别是什么.

我的例子是:

document.getElementById("searchField").onkeyup = searchSuggest;
Run Code Online (Sandbox Code Playgroud)

当我换到时searchSuggest(),我的功能不起作用.

有人可以向我解释一下吗?如果我发现任何部分不清楚,请询问,谢谢.

Fré*_*idi 5

当你写:

document.getElementById("searchField").onkeyup = searchSuggest();
Run Code Online (Sandbox Code Playgroud)

您正在调用searchSuggest函数并将其返回的值分配给该onkeyup成员.在你的情况下,你可能想要将函数本身分配给onkeyup,所以你应该写:

document.getElementById("searchField").onkeyup = searchSuggest;
Run Code Online (Sandbox Code Playgroud)