在工作过程中会有如下场景,我们想定义一个公共方法helper,需要确认全局环境中是否存在了,以防止命名冲突,如果用下面这种方式会报ReferenceError,影响后续脚本的执行。
if (helper) {
console.log('helper exist');
}
此时我们可以有如下几种方式:
- window
window有个缺陷,我们的程序不一定运行在浏览器中,也可能运行在node.js中,node.js的全局对象并不是window。if (window.helper) { console.log('helper exist'); }
- typeof
if (typeof helper !== 'undefined') {
console.log('helper exist');
}
网友评论