在每个文件中使用“ function()'use strict'”有什么好处?

Ste*_*991 6 javascript angularjs

我正在重构一个旧的AngularJS 1.3项目。我注意到的一件事是,进行此操作的人使用以下命令启动了AngularJS代码的每个文件:

(function () {
'use strict';

  angular.module('app').factory('Employees', ['$http', function($http) {
    // angular code removed
  }]);

})();
Run Code Online (Sandbox Code Playgroud)

在每个文件中使用function()'use strict'是否对代码有好处?对我来说,每个文件浪费3行。是否有标准/最佳做法?

cha*_*tfl 3

如果你把它放在'use strict';IIFE 之外,你就使它成为全局的。

这意味着您无法控制的不严格兼容的代码(例如其他库)可能会导致问题。

就像变量作用域一样,您只能'use strict'通过将其全部放入 IIFE 中来在代码上下文中限定作用域