Javascript 在调用之前查找函数/类是否存在

标签 javascript function exists

我知道如何检查全局上下文的属性是否存在。的任何变化

if (typeof myFunction != 'undefined'){...}

但是如果我不知道函数的名称怎么办?我认为在全局范围内我可以做到这一点

if (typeof this['myFunction'] != 'undefined'){...}

但我不知道如何在这样的函数中做到这一点

function load(functionName){
  if (typeof GLOBALCONTEX[functionName] != 'undefined'){
    GLOBALCONTEX[functionName](arg1 , arg2 , ...);
  }
}

而且我不想使用 try/catch,因为我听说它很慢。

最佳答案

如果使用浏览器,请将 GLOBALCONTEX 替换为 window。示例:

function load(functionName){
  if (typeof window[functionName] != 'undefined'){
   window[functionName](arg1 , arg2 , ...);
  }
}

关于Javascript 在调用之前查找函数/类是否存在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6670765/

相关文章:

javascript - 为异步函数创建回调

javascript - 如何避免输入值切换大小写

ruby-on-rails - 如果存在如何拒绝?对于非嵌套属性?

mysql - EXISTS 语句中忽略的 SELECT 列表和子查询是什么?

javascript - 为中国用户动态切换 Google Maps API URL

javascript - 多个 JSON 文件调用

android - 检查 Canvas android中线条和圆圈的碰撞

php - wordpressfunctions.php - 为每个帖子类别使用不同的页面模板

java - JAVA连接后如何检查数据库是否存在

javascript - 具有多个 y 轴和不同比例的 Chartjs