小编joh*_*der的帖子

如何在使用strict mode pragma时声明全局变量

使用自调用函数来包装严格模式兼容代码(通常称为严格模式编译指示)被认为是一种好习惯:

(function(){
  "use strict";
  // Strict code here
}());
Run Code Online (Sandbox Code Playgroud)

我的问题是如何在这种情况下声明全局变量?我今天知道的三种选择:

备选方案1:

var GLOB = {};

(function(){
  "use strict";
}());
Run Code Online (Sandbox Code Playgroud)

备选方案2:

(function(){
  "use strict";
  window.GLOB = {};
}());
Run Code Online (Sandbox Code Playgroud)

备选方案3:

(function(win){
  "use strict";
  win.GLOB = {};
}(window));
Run Code Online (Sandbox Code Playgroud)

任何偏好和动机?其他选择?

javascript

32
推荐指数
3
解决办法
2万
查看次数

标签 统计

javascript ×1