js代码混淆 以及 混淆后如何使用

JavaScript047

js代码混淆 以及 混淆后如何使用,第1张

js代码混淆网上有许多在线工具,你直接把代码copy进去进行转换就可以的,比如站长工具http://tool.chinaz.com/Tools/JsCodeConfusion.aspx。如果文件太大在线可能不方便,你可以使用淘宝封装的压缩工具TBCompressor,网上搜一下就能找到。

对于混淆后的使用很简单,就直接引入就可以了,不用做其他的改变。混淆后其实还是js,只不过把变量名精简了,所以文件会小很多,而浏览器还是能识别的

如果你是全局安装的,可以直接在需要混淆文件的目录下,

按住shift键右击鼠标选择在此处打开命令窗口如图

2.打开窗口后直接在窗口执行

uglifyjs main.js demo.js -o foo.min.js --source-map foo.min.js.map --source-map-root http://onbook.me -p 5 -c -m --wrap --export-all

混淆文件main.js和demo.js生成foo.min.js和foo.min.js.map并指定map的来源网站

3.另一种使用方式是,把UglifyJS2包放到程序中,通过API对JS文件或JS代码进行压缩。首先,新建一个NPM项目文件package.json,然后在是下载UglifyJS2依赖包。

新建文件package.json

{

  "name": "nodejs-uglifyjs2",

  "version": "0.0.1",

  "description": "uglifyjs2",

  "author": "Conan Zhang ",

  "dependencies": {

  }

}

4.执行npm install uglify-js --save下载UglifyJS2依赖包

5.安装完成后

新建test.js开始测试

var UglifyJS = require('uglify-js')

 

//代码压缩

var result = UglifyJS.minify("var b = function () {}", {fromString: true})

console.log("\n===========================")

console.log(result)

 

//文件压缩

result = UglifyJS.minify(["demo.js"])

console.log("\n===========================")

console.log(result.code)

//多文件压缩,指定source map和网站来源

result = UglifyJS.minify(["main.js","demo.js"],{

    outSourceMap: "out.js.map",

    sourceRoot: "http://onbook.me",

    mangle:true

})

console.log("\n===========================")

console.log(result.code)

console.log(result.map)