首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >UglifyJS 'use strict‘语句

UglifyJS 'use strict‘语句
EN

Stack Overflow用户
提问于 2013-12-19 22:50:24
回答 1查看 3.4K关注 0票数 9

我正在使用Grunt连接grunt-contrib-uglify任务来缩小我的应用程序中的JavaScript。

在缩小后,它将删除除第一条语句之外的所有'use strict'语句,因此我得到了一个顶部带有'use strict‘指令的巨大JavaScript文件。

问题是,全局'use strict'指令使浏览器在“严格模式”下执行我在项目中使用的每个库的代码,这会导致错误,因为并不是每个第三方代码都是为严格模式编写的。

对如何解决这个问题有什么想法吗?

EN

回答 1

Stack Overflow用户

发布于 2015-07-07 23:29:14

如果您用IIFE包装所有脚本,那么grunt-contrib-uglify不会将该语句定位到停止位置,而是将其留在您编写的每个生命周期中。

代码语言:javascript
复制
(function() {
    'use strict';

    // do stuff
})();

是的,这是更多的代码,但是如果你用file压缩文件,这应该不是问题。此外,这还会将您定义的任何变量保留在全局范围之外,从而产生更高性能的代码。

票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20684723

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档