以前看网上的页面或者插件,有时去读别人的js文件看具体的逻辑,经常遇到很头疼的问题,别人的js变量都说“O”或者“0”,觉得遇到高手了,变相加密了。
今天来和大家分享下,其实对方是对js进行了压缩,当然不排除有些的确进行了加密。
下面来说说js压缩的原理:
【1】去掉注释了
【2】去掉换行符,空格
【3】变量,函数名,函数的参数等简化
通常深度压缩JS都必须要做的一步就是尽量地缩短变量名,因为一份体积巨大的JS代码,其中的变量名会占去不少空间。
Javascript有个特性就是不同作用域的变量名可以任意重复
这样短又大量重复的变量可以让人索云里雾里不知所云,也变相的起到了加密JS代码的作用。
原理就在这儿了,但开始压缩的时候必须要做到以下几点:
1.压缩前的代码格式要标准。因为去掉换行与空格时,所有语句就变成一行了,如果你的代码有瑕疵(比如某行少了个分号),那就会导致整个文件报错。当然,现在有的压缩工具已经比较智能了。
2.备份原文件
3.压缩很可能不会一次成功,一般要多试,多改
网友评论