js压缩、js混淆、js加密,有什么不同?

js压缩、js混淆、js加密,有什么不同?

什么js压缩?

js压缩,目的是让js代码变的体积变小。

比如,去除注释、去除回车换行、把长变量名变短,甚至去除未使用的代码。

常用的js压缩工具,推荐:Uglifyjs

什么是js混淆?

“混淆”是个外来词,来自英文:Obfuscate,是将js代码转换成功能相同,但是难于阅读和理解的代码形式。

比如:数字1可转化成0x4cfee^0x4cfef;

比如:true可转化成!![];

比如:1+1,可转化成:function(s,h){return s+h;}(210172^210173,522441^522440),等等。

什么是js加密?

js加密,与js混淆的界限是比较模糊的,js加密也是将js代码变的难以理解,但js加密从名称上理解的话,它更测重于用加密算法对数据进行保护。

比如:用base64可逆算法,对字符串进行加密;

比如:用escape对代码进行加密,等等。

JS混淆加密目的是让js代码更安全,防止被他人分析、修改等,也可用于小游戏过审等场合。js混淆加密工具,推荐:JShaman

js压缩和混淆加密工具,可以同时使用吗?

如果既想保护js代码,又想压缩体积,那么两种工具是可以同时使用的,但使用顺序需要注意,要先混淆加密,再压缩体积。

你可能感兴趣的:(js压缩,js混淆,js加密)