在javascript中,检查(全局)函数是否存在的最佳(最高效/最快)方法是什么?以下两种方法我都用过,但我希望有其他方法或解释为什么一种方法可能比其他方法更好。
使用typeof:
if(typeof window.myFunc != 'function'){
window.myFunc = function(){
// payload
}
}
将函数定义为已存在的函数,如果不存在则创建该函数
window.myFunc == window.myFunc || function(){
// payload
}
你可以在javascript中像这样使用instanceof
操作符
console.log instanceof Function
或
window.foo instanceof Function