我有以下代码:
console.log(callback);
if (typeof callback != "undefined" || callback != null){
callback();
}
控制台打印出来的地方:
null
但 javascript 仍在尝试执行 callback() 函数调用。知道为什么吗?
我有以下代码:
console.log(callback);
if (typeof callback != "undefined" || callback != null){
callback();
}
控制台打印出来的地方:
null
但 javascript 仍在尝试执行 callback() 函数调用。知道为什么吗?
因为它应该是&&
,即逻辑与:
if (typeof callback != "undefined" && callback != null) {
callback();
}
但我建议使用检查类型“函数”:
if (typeof callback === "function") {
callback();
}
甚至更短:
typeof callback === "function" && callback();
尝试 :
console.log(callback);
if (!(typeof (callback) == "undefined" || callback == null)){
callback();
}