🔒 JavaScript 混淆
通过将变量和函数重命名为无意义名称,并将字符串字面量转为转义序列来保护你的 JavaScript。完全在浏览器中运行——无需上传。
关于 JavaScript 混淆
这个 JavaScript 混淆工具完全在你的浏览器中运行。它对源码进行分词,应用两种变换:用 var、let、const 和 function 声明的标识符被重命名为 _0x3a1f 这样的无意义名称,字符串字面量被转为 \x68\x65\x6c\x6c\x6f 这样的十六进制转义序列。结果仍能以相同方式运行,但人类阅读或逆向工程的难度大大增加。整个过程不会上传任何数据到服务器。
选项说明
- 重命名标识符 —— 将声明的变量、参数和函数名替换为生成的标记。属性访问(点号之后)和保留关键字保持不变。
- 转义字符串 —— 将字符串字面量中的每个字符重写为
\xHH转义,使字面量无法通过纯文本搜索找到。运行时值完全相同。 - 移除注释 —— 在混淆前去除
//和/* */注释,避免泄露提示和作者信息。
如何使用混淆器
- 把 JavaScript 粘贴到输入框中。
- 勾选你想应用的选项。
- 点击混淆生成受保护的输出。
- 查看统计行了解原始大小、混淆后大小以及重命名的标识符数量。
- 点击复制复制结果,或点击清空重新开始。
常见问题
混淆会加密我的代码吗? 不会。混淆让代码更难阅读,但决心足够大的人仍可逆向。如需真正的保密,请使用加密并将机密保存在服务器上。
混淆后的代码还能运行吗? 能。这些变换保留了运行时行为——只有名称和字符串表示会改变。发布前请测试输出。
全局变量会被重命名吗? 脚本顶层的声明也会被重命名,但其他脚本或 HTML 属性的引用可能会失效。为安全起见,请将代码包裹在 IIFE 中。