▣
JS-Obf
在浏览器里混淆 JavaScript,代码不上传,不留痕迹。
引擎加载中…
★ GitHub 源码 / 部署
低混淆
中混淆
高混淆
自定义
加载示例
清空代码
变量重命名 + 压缩,性能损耗最小,适合日常开发与生产部署。
运行目标环境(Target)
browser(浏览器)
browser-no-eval(无 eval 浏览器沙盒)
node(Node.js 服务端)
标识符命名风格
hex(_0x1a2b)
mangled(a, b, c… 短名压缩)
字符串加密方式
不加密
base64(轻量防护)
rc4(更强加密,体积更大)
随机种子(可选)
数值转等价表达式
(将数字转为算术或位运算表达式)
Unicode 字符串转义
(\x 或 \u 编码)
字符串数组轮转
(对字符串数组进行位移偏移)
字符串数组打乱
(随机打乱数组元素顺序)
长字符串分块拆分
(分割为多个短片段)
混淆对象键名
(obj['key'] 混淆,若代码依赖 JSON 序列化、反射或接口键名匹配请勿开启)
禁用控制台输出
(屏蔽 console.log/info/error)
控制流平坦化
(改变分支执行流程,较慢,体积膨胀)
死代码注入
(混入随机不可达代码与不透明谓词)
自我防御
(格式化混淆代码将导致其无法运行)
调试保护
(若用户打开 DevTools 控制台则触发无限 debugger)
生成 Source Map
(调试排错用,生成独立 .map 文件)
域名锁定(Domain Lock,多域名逗号分隔,可留空)
注意:开启后,混淆代码仅能在指定域名下执行(*.example.com 匹配主域及子域;单个 example.com 仅匹配完全一致的主机)。在未绑定域名或本地直接打开将拒绝运行!
保留标识符(保持原名不被混淆,逗号分隔)
保留字符串(保持明文不被加密,逗号分隔)
调试保护持续间隔 ms(0 为仅进入控制台触发一次)
高防护安全提醒:
原始 JavaScript 代码
可粘贴 / 拖拽 .js 文件 / Tab 缩进
0 行 · 0 B
上传 .js 文件
取消
▶ 混淆代码
混淆结果
—
复制结果
下载 .js
下载 Source Map
原始大小
0 B
混淆后大小
0 B
体积变化率
—
行数对比
0 行 → 0 行