关注它,不迷路。
本文章中所有内容仅供学习交流,不可用于任何商业用途和非法用途,否则后果自负,如有侵权,请联系作者立即删除!
一.问题
如题,如何编写一个通用的js混淆代码美化工具?
这个问题,其实可以规范为三个小目标:
能够美化代码
插件能够通用
不影响代码逻辑
二.插件
1.规范循环表达式,给不规范的代码块加上{}:
https://t.zsxq.com/UXP4D
2.分离变量定义,单个变量定义更好处理:
https://t.zsxq.com/EoDsq
3.object内部的key字段字符串化:
https://t.zsxq.com/19wXbEGj9
4.变量定义为函数表达式合并为函数定义:
https://t.zsxq.com/0ARgX
5.去逗号表达式:
https://t.zsxq.com/19iczIKHG
6.初始化为常量且始终未修改的变量定义还原:
https://t.zsxq.com/19zgyjPmP
7.处理十六进制、中英文Unicode字符串或数值:
https://t.zsxq.com/9Qzv8
上面的这些插件都是可以通用处理的,如果发现有bug,欢迎提交样本给我。
完整代码:
https://t.zsxq.com/19ZYPZ2Fr
今天的分享就到这里,感谢阅读。
欢迎加入知识星球,学习更多AST和爬虫技巧。