javascript - 获取函数而不是运行函数时引发错误的任何方法

标签 javascript

常见错误:

a = myfunction;

...而不是:

a = myfunction();

有什么办法可以避免这种情况吗?

如果我们在对象内有这个函数,我可以对对象说些什么以避免返回函数并需要执行吗?

最佳答案

您可以使用typeof来检查它是否是一个函数:

a = myfunction;
var result;

if (typeof a == "function")
    // a was set to myfunction, not myfunction()
    result = a();
else
    // a was presumably set to myfunction() and not myfunction
    result = a;

这样,如果它确实是一个函数,您就可以调用该函数,否则您可以用它做其他事情,假设这就是您想要做的事情。

关于javascript - 获取函数而不是运行函数时引发错误的任何方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30232941/

相关文章:

javascript 只允许重定向同一域内的 url

javascript - react 语义用户界面 : How to set focus for input field of dropdown element

javascript - jQuery Sortable - 如果拖出,则将项目移动到列表顶部。

javascript - 如何正确调用window.setInterval?

javascript - Chrome扩展程序权限(读取网站中的数据)?

javascript - 单击此图像的 map 区域时获取 img 标签 ID

javascript - 如何在 Web 应用程序 Javascript 上检测用户首次登录 Firebase

javascript - 基于四个 html 页面的滚动指示器在向上滚动时不降低百分比

javascript - JSON、数组和对象的调用

javascript - 当 slider 项目具有 .flex-active-slide 类时,使 flexslider 视频自动播放