2020-09-02 在全局程序中检查变量而不会出现Refer

2020-09-02  本文已影响0人  欣欣最棒

在工作过程中会有如下场景,我们想定义一个公共方法helper,需要确认全局环境中是否存在了,以防止命名冲突,如果用下面这种方式会报ReferenceError,影响后续脚本的执行。

if (helper) {
    console.log('helper exist');
}

此时我们可以有如下几种方式:

  1. window
    if (window.helper) {
       console.log('helper exist');
    }
    
    window有个缺陷,我们的程序不一定运行在浏览器中,也可能运行在node.js中,node.js的全局对象并不是window。
  2. typeof
  if (typeof helper !== 'undefined') {
      console.log('helper exist');
  }
上一篇下一篇

猜你喜欢

热点阅读