是否可以在调用前先判断一个函数名是否存在?
最佳答案
您检查 typeof
函数,例如:
if(typeof this["functionName"] != "undefined") {
alert("uh oh, doesn't exist");
}
如果你需要检查它是否存在并且是一个要格外确定的函数:
if(typeof this["functionName"] == "function") {
this["functionName"](); //it exists, call it
}
或者更轻松的版本:
if(this["functionName"]) this["functionName"]();
如果名称没有改变(例如,我误解了问题),只需使用点符号,如下所示:
if(this.functionName) this.functionName();
或者当然它不一定是 this
...无论你检查什么对象,使用它,如果它是一个全局函数使用 window
。
关于javascript:如何判断一个函数名是否存在?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4313462/