在UglifyJS入门中主要记录了UglifyJS的安装,配置。篇末在命令行中使用了一个简单命令来压缩一个JS文件。这篇以编程的方式去压缩JS文件。即写一个build.js文件,使用node命令执行该文件。build.js中的代码会去调用UglifyJS的接口函数以执行压缩任务。
1,去github下载最新的UglifyJS。两种方式下载,如果安装了git,进入git控制台使用如下命令
git clone git://github.com/mishoo/UglifyJS.git
或者使用http方式下载,点击zip下载。解压后其目录结构如下
2,新建一个项目(文件夹)myApp,将uglify-js.js和lib目录拷贝到自己的项目中。如下
3,在myApp中新建一个compress.js,内容如下
var fs = require('fs');
var jsp = require("./uglify-js").parser;
var pro = require("./uglify-js").uglify;
var origCode = "var abc = function(){ var one = 5; return one;}";
var ast = jsp.parse(origCode); // parse code and get the initial AST
ast = pro.ast_mangle(ast); // get a new AST with mangled names
ast = pro.ast_squeeze(ast); // get an AST with compression optimizations
var finalCode = pro.gen_code(ast); // compressed code here
console.log(finalCode);
这段代码的大概意思是取fs模块,它是node的文件模块。 接着取UglifyJS的两个模块。后面就是UglifyJS的压缩流程了。
4,打开命令行,执行compress.js
控制台输出了压缩后的代码。好了,就这么简单。
5,既然在node环境下,当然可以写一个函数直接读取源文件,压缩后输出到指定的目录。将以上代码封装到一个函数中,如下
// 读取一个文件,压缩之
function buildOne(flieIn, fileOut) {
var origCode = fs.readFileSync(flieIn, 'utf8');
var ast = jsp.parse(origCode);
ast = pro.ast_mangle(ast);
ast = pro.ast_squeeze(ast);
var finalCode = pro.gen_code(ast);
fs.writeFileSync(fileOut, finalCode, 'utf8');
}
将我写的ajax-1.0.js压缩,输出到myApp目录中
buildOne('ajax-1.0.js', 'ajax-min.js');
这时将会在myApp目录中生成一个ajax-min.js。
- 大小: 20.9 KB
- 大小: 3.4 KB
- 大小: 1.2 KB
分享到:
相关推荐
本文将详细介绍如何通过编程方式使用UglifyJS来合并和压缩JavaScript文件。 首先,为了使用UglifyJS,你需要先获取它的源码。有两种方式下载UglifyJS:如果你已经安装了Git,可以在命令行输入 `git clone git://...
其中,UglifyJS2 是一个广泛使用的 Node.js 插件,专门用于压缩和混淆JavaScript代码。本文将详细介绍如何使用 UglifyJS2 来优化你的JS文件。 一、UglifyJS2 简介 UglifyJS2 是由 Marc Harter 创建的开源项目,它...
**UglifyJS** 是一个强大的JavaScript工具集,主要用于处理JavaScript代码,包括解析、压缩和美化。这个工具在JavaScript开发领域扮演着重要角色,尤其是在优化前端代码以提高页面加载速度和减少网络传输的数据量时...
**UglifyJS** 是一个广泛使用的JavaScript代码压缩工具,主要功能是将源代码压缩,减少文件大小,提高网页加载速度。它通过删除不必要的字符,如注释、空格、换行符,以及对变量名进行混淆来实现压缩。UglifyJS 也...
使用UglifyJS合并压缩文件时,它的智能 `minify` 方法允许开发者通过简单配置来实现复杂的压缩和合并任务,提高前端资源管理的效率。在实际的开发过程中,合理使用UglifyJS的这些参数可以进一步优化项目的性能,同时...
JavaScript 合并压缩的 JSP Tag 实现是一个常见的前端优化技术,主要目的是为了减少网络请求次数,提升网页加载速度。在网页开发中,通常会有多份 JavaScript 文件,每份文件都对应一个网络请求,这会增加页面加载...
`使用说明.txt`可能包含关于如何使用`hdjso.exe`进行JavaScript压缩的指南。 **JavaScript加密**: JavaScript加密是一种更高级的安全措施,它不仅使代码难以阅读,还可能涉及到对代码逻辑的加密,使其在未解密前...
压缩JavaScript代码的主要目的是减少文件大小,提高网络传输效率,加快网页加载速度,从而提升用户体验。 JavaScript代码压缩主要有以下几个方面的知识点: 1. **代码混淆(Minification)**:这是最基础的压缩...
在这个过程中,JavaScript代码压缩工具通过删除不必要的空格、换行符、注释以及使用变量简写等方式来实现代码的最小化。本文将详细介绍一种名为"jsMinifier"的JavaScript压缩工具,它需要在运行时安装JAVA环境。 **...
**UglifyJS2** 是一个非常著名的JavaScript代码压缩工具,它的主要功能是对JavaScript源代码进行优化和压缩,以减少代码体积,提高网页加载速度。这个压缩过程包括删除不必要的空白、注释、以及对变量名进行混淆等...
为了解决这个问题,出现了专门的JavaScript压缩工具,如JsMinGUI.exe,用于优化和压缩JavaScript代码。 JsMinGUI是一个图形用户界面(GUI)版本的JavaScript压缩工具,它基于Doug Crockford的JsMin算法。这个工具的...
同时,对于CSS,它还会合并相同的属性值,删除未使用的颜色、字体等规则,从而达到压缩目的。 2. **性能优化** 在网页性能优化领域,`YUI Compressor` 是一个不可或缺的工具。通过减少HTTP请求的数量和每个文件的...
**UglifyJS** 是一款基于 **Node.js** 的 JavaScript 语法解析、压缩及格式化工具。它具备以下主要功能特性: 1. **解析**: UglifyJS 能够读取并理解 JavaScript 代码,构建抽象语法树 (Abstract Syntax Tree, AST)...
常见的JavaScript代码压缩工具有UglifyJS、Terser、Google的Closure Compiler等。这些工具提供了命令行接口以及与构建工具(如Webpack、Gulp、Grunt)集成的插件,方便在自动化构建流程中使用。 使用"javascript...
1. **UglifyJS**:这是一个功能强大的JavaScript压缩器,能够处理ES6语法,并可以进行变量重命名,进一步减小文件大小。 2. **Terser**:原名uglify-es,是UglifyJS的后续项目,支持最新的JavaScript语法。 3. **...
结合描述"压缩js",我们可以理解这里可能讲述的是如何用PHP编写程序或调用库来压缩JavaScript代码。 在JavaScript压缩领域,有许多流行的工具,例如UglifyJS、Terser(以前称为uglify-js2)和Closure Compiler等。...
为了优化网站性能,开发者通常会使用像"jsmin"这样的JavaScript压缩工具来减小文件大小。 "jsmin"是一个高效的JavaScript压缩工具,其主要目的是通过删除不必要的字符(如空格、注释和换行)以及缩短变量名来减小JS...
总的来说,前端开源库`fast-uglifyjs-plugin`是Webpack用户压缩JavaScript代码的一个强大工具,它的高性能和易用性使其在前端开发领域具有很高的价值。通过合理配置和使用,可以显著提升项目的构建效率,降低资源...