✅ 一、安装方法
- 1
🛠️ 二、基本用法
原始文件 hello.js
- 1
- 2
- 3
- 4
执行混淆:
- 1
⚙️ 三、常用命令行参数说明
| 参数 | 类型 | 默认值 | 说明 | 
|---|---|---|---|
| --compact | boolean | true | 是否压缩代码,去除空格和换行 | 
| --controlFlowFlattening | boolean | false | 控制流扁平化,重构为状态机逻辑,显著提升混淆难度,但影响性能 | 
| --controlFlowFlatteningThreshold | number(0~1) | 0.75 | 控制多少比例的代码节点被扁平化 | 
| --stringArray | boolean | true | 是否将字符串提取为数组项 | 
| --stringArrayEncoding | "base64"/"rc4"/false | false | 对字符串数组进行编码,防止直接读取 | 
| --splitStrings | boolean | false | 拆分长字符串为若干片段 | 
| --splitStringsChunkLength | number | 10 | 拆分后的最小字符串长度 | 
| --selfDefending | boolean | false | 添加防调试与反格式化保护 | 
| --transformObjectKeys | boolean | false | 混淆对象属性名 | 
| --deadCodeInjection | boolean | false | 插入无用代码增加逆向难度 | 
| --identifierNamesGenerator | "hexadecimal"/"mangled"/"dictionary" | "hexadecimal" | 变量和函数名混淆风格 - hexadecimal:生成形如_0xabc123的名字(默认)- mangled:生成短小的如a,b,c名称- dictionary:使用自定义字典(配合identifierNamesGeneratorDictionary) | 
⚠️ 性能提示:controlFlowFlattening
📄 四、使用配置文件(推荐)
obfuscator-config.json
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
使用命令:
- 1
📁 五、批量混淆目录
- 1
💡 六、实用示例合集
1️⃣ 简单压缩
- 1
2️⃣ 最大强度混淆(慎用)
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
🔍 七、常见问题与建议
❓运行变慢?
❓打包后报错?
❓是否推荐前端项目全面混淆?
🧩 八、总结与最佳实践
| 场景 | 建议配置 | 
|---|---|
| 开发调试 | 不混淆或仅压缩 --compact true | 
| 普通项目上线 | 使用字符串混淆与压缩 | 
| 有登录校验、反爬逻辑 | 加上 controlFlowFlattening、stringArrayEncoding | 
| 高保密需求(但可牺牲性能) | 所有混淆选项全开,阈值调高 | 


 400 186 1886
400 186 1886






 
 



