使用 uglifyjs 压缩混淆 js 文件

硅谷探秘者 算法基础 2006 0 0

前端项目正式发布时一般需要混淆压缩js、css文件等,一方面压缩能够使文件体积更小,更多的节约网络io资源,另一方面能避免被人读懂你的代码!!!!!!工具可以使用 uglifyjs2。

安装

通过npm安装。

下载node.js安装文件,并安装:https://nodejs.org/en/

npm包含在node.js中。

安装 uglifyjs:

npm install uglify-js@2 -g

@2的作用是指定下载uglify-js 2.x的版本,@1为下载1.x的版本

用法

uglifyjs input1.js [input2.js ...] [options]

  -o, --output                  Output file (default STDOUT).                   
  -b, --beautify                Beautify output/specify output options.
                                                                        [string]
  -m, --mangle                  Mangle names/pass mangler options.      [string]
  -r, --reserved                Reserved names to exclude from mangling.        
  -c, --compress                Enable compressor/pass compressor options. Pass
                                options like -c
                                hoist_vars=false,if_return=false. Use -c with
                                no argument to use the default compression
                                options.                                [string]
  • -c :压缩
  • -m :混淆命名
  • -b :格式化输出js文件(否则为只有一行)
  • -o :目标输出文件

--wrap和--export-all选项也很有用,不过多个文件有先后执行调用顺序时可能会有问题。

例如,压缩一个文件

uglifyjs vue.js -o vue.min.js -c -m

example

可以发现压缩后体积减少了很多。也可以将多个js压缩成一个js,就不演示了。


评论区
请写下您的评论...
暂无评论...
猜你喜欢
算法基础 1324 安装node第一步依然是安装node,下载node.js安装,并安装:https://nodejs.org/en/全局安装clean-cssnpminstall-gclean-css局部安装
java基础 1247 核心类ZipOutputStream的api档请参考:https://nowjava.com/docs/java-api-11/java.base/java/util/zip
算法基础 1384 安装proto编译器参考:http://www.jiajiajia.club/blog/artical/351psy9r6l0g/464编写.protosyntax="proto3
minio 2042 rclone下载地址:https://rclone.org/downloads/ 解包: unziprclone-v1.59.0-linux-amd64.zip cdcdrclone
java基础 1249 /ZipInputStream.html关于zip的代码参考:http://www.jiajiajia.club/blog/artical/1en1qpemej45/499java代码importjava.io.*;imp
java基础 1939 java参考:http://www.jiajiajia.club/blog/artical/1en1qpemej45/499一
工具 3241 引入pomdependencygroupIdorg.dom4j/groupIdartifactIddom4j/artifactIdversion2.0.0/version/dependency需
框架 3732 1.官网下载http://maven.apache.org/download.cgi解找一个目录解,本到f盘根目录下2.修改本地仓库配置settings标签下加入
归档
2018-11  12 2018-12  33 2019-01  28 2019-02  28 2019-03  32 2019-04  27 2019-05  33 2019-06  6 2019-07  12 2019-08  12 2019-09  21 2019-10  8 2019-11  15 2019-12  25 2020-01  9 2020-02  5 2020-03  16 2020-04  4 2020-06  1 2020-07  7 2020-08  13 2020-09  9 2020-10  5 2020-12  3 2021-01  1 2021-02  5 2021-03  7 2021-04  4 2021-05  4 2021-06  1 2021-07  7 2021-08  2 2021-09  8 2021-10  9 2021-11  16 2021-12  14 2022-01  7 2022-05  1 2022-08  3 2022-09  2 2022-10  2 2022-12  5 2023-01  3 2023-02  1 2023-03  4 2023-04  2 2023-06  3 2023-07  4 2023-08  1 2023-10  1 2024-02  1 2024-03  1 2024-04  1 2024-08  1
标签
算法基础 linux 前端 c++ 数据结构 框架 数据库 计算机基础 储备知识 java基础 ASM 其他 深入理解java虚拟机 nginx git 消息中间件 搜索 maven redis docker dubbo vue 导入导出 软件使用 idea插件 协议 无聊的知识 jenkins springboot mqtt协议 keepalived minio mysql ensp 网络基础 xxl-job rabbitmq haproxy srs 音视频 webrtc javascript 加密算法
目录
没有一个冬天不可逾越,没有一个春天不会来临。最慢的步伐不是跬步,而是徘徊,最快的脚步不是冲刺,而是坚持。