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

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 - Javascript在调用之前查找函数/类是否存在,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6670765/

10-13 02:49