webpack中的代码压缩&&混淆机制

  1. 压缩

    删除 Javascript 代码中所有注释、跳格符号、换行符号及无用的空格,缩短变量名称从而压缩 JS 文件大小。并且不同作用域的变量名是可以重复的,类似a,b,c可以反复出现。

  2. 混淆

    经过编码将变量和函数原命名改为毫无意义的命名,以防止他人窥视和窃取 Javascript 源代码。让我们的代码尽可能的不可读,常见的做法有:分离变量,增加无意义的代码,打乱控制流。

  3. 加密

    一般使用eval方法,效果和混淆类似。大部分js加密只是对源码进行了字符串的变换,并没有深入到代码语法层面。