小编典典

如何检查 JavaScript 中是否存在函数?

all

我的代码是

function getID( swfID ){
     if(navigator.appName.indexOf("Microsoft") != -1){
          me = window[swfID];
     }else{
          me = document[swfID];
     }
}

function js_to_as( str ){
     me.onChange(str);
}

但是,有时我的onChange不加载。Firebug 错误与

me.onChange 不是函数

我想优雅地降级,因为这不是我程序中最重要的特性。typeof给出同样的错误。

关于如何确保它存在然后只执行的任何建议onChange

(除了 try catch 一项工作外,没有以下方法)


阅读 104

收藏
2022-03-03

共1个答案

小编典典

尝试这样的事情:

if (typeof me.onChange !== "undefined") { 
    // safe to use the function
}

或者更好(根据 UpTheCreek 赞成的评论)

if (typeof me.onChange === "function") { 
    // safe to use the function
}
2022-03-03