javascript-当评估某个对象是否为空时,对象不是函数错误

javascript-当评估某个对象是否为空时,对象不是函数错误,javascript,null,undefined,conditional-statements,or-operator,Javascript,Null,Undefined,Conditional Statements,Or Operator,我有以下代码: console.log(callback); if (typeof callback != "undefined" || callback != null){ callback(); } 控制台的打印位置: null 但是javascript仍在尝试执行callback()函数调用。知道为什么吗?因为它应该是&&,即逻辑和: 但我建议对类型“function”使用check: 甚至更短: typeof callback === "function" &&

我有以下代码:

console.log(callback);
if (typeof callback != "undefined" || callback != null){
  callback();
}
控制台的打印位置:

null

但是javascript仍在尝试执行callback()函数调用。知道为什么吗?

因为它应该是
&&
,即逻辑和:

但我建议对类型“function”使用check:

甚至更短:

typeof callback === "function" && callback();
尝试:


只需输入
&&
检查其中是否有错误
if (typeof callback === "function") {
    callback();
}
typeof callback === "function" && callback();
console.log(callback);
if (!(typeof (callback) == "undefined" || callback == null)){
  callback();
}