Skip to content
| Marketplace
Sign in
Visual Studio Code>Formatters>JSFuck ObfuscatorNew to Visual Studio Code? Get it now.
JSFuck Obfuscator

JSFuck Obfuscator

Zqqqq

|
23 installs
| (0) | Free
一键将 JavaScript 代码转换为 JSFuck 混淆格式,也可以反向转换
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

JSFuck Obfuscator - VSCode/Cursor 扩展

一个强大的 JavaScript 代码混淆工具,基于 JSFuck 技术,只使用 []()!+ 这6个字符来编写 JavaScript 代码。

🚀 功能特性

  • ✅ 一键混淆: 支持选中代码片段或整个文件的 JSFuck 混淆
  • ✅ 一键还原: 支持将 JSFuck 代码还原为原始 JavaScript
  • ✅ 自动备份: 混淆前自动创建备份文件
  • ✅ 大小统计: 显示混淆前后的文件大小变化
  • ✅ 快捷键: 支持键盘快捷键操作
  • ✅ 右键菜单: 在编辑器和文件管理器中都有便捷入口
  • ✅ 状态栏: 在 JavaScript/TypeScript 文件中显示快捷操作

📦 安装方法

方法一:从 VSIX 文件安装

  1. 在 VSCode/Cursor 中打开命令面板 (Ctrl+Shift+P)
  2. 输入 "Extensions: Install from VSIX..."
  3. 选择 jsfuck-obfuscator.vsix 文件

方法二:开发者安装

  1. 克隆这个项目
  2. 在项目根目录运行 npm install
  3. 运行 npm run compile
  4. 按 F5 启动扩展开发宿主

🎯 使用方法

混淆选中代码

  1. 在 JavaScript/TypeScript 文件中选择要混淆的代码
  2. 使用以下任一方式触发混淆:
    • 快捷键: Ctrl+Shift+J (Mac: Cmd+Shift+J)
    • 右键菜单: 选择 "🔒 转换为 JSFuck 混淆"
    • 命令面板: Ctrl+Shift+P → "JSFuck: 转换为 JSFuck 混淆"
    • 状态栏: 点击右下角的 "JSFuck" 按钮

还原 JSFuck 代码

  1. 选择 JSFuck 混淆后的代码
  2. 使用快捷键 Ctrl+Shift+Alt+J 或右键菜单选择 "🔓 从 JSFuck 还原代码"

混淆整个文件

  1. 在文件管理器中右键点击 .js 或 .ts 文件
  2. 选择 "🔒 混淆整个文件" 或 "💾 创建备份并混淆"

⚙️ 配置选项

在 VSCode 设置中搜索 "jsfuck" 可以找到以下配置项:

配置项 默认值 描述
jsfuck.autoBackup true 混淆前是否自动创建备份文件
jsfuck.backupSuffix .original.js 备份文件的后缀名
jsfuck.showSizeInfo true 是否显示文件大小变化信息
jsfuck.preserveComments false 是否保留注释(暂未实现)

📝 示例

原始代码

const whiteListPages = ["/pages/white/certDetail"];
let isAlreadyAutoLogin = false;
console.log("Hello World!");

JSFuck 混淆后

([]["fill"]["constructor"](https://github.com/your-username/jsfuck-vscode-extension/blob/HEAD/([]["fill"]["constructor"]+"")[+!+[]+!+[]+!+[]]+([]["fill"]["constructor"]+"")[+!+[]+!+[]+!+[]+!+[]+!+[]+!+[]]+([][[]]+"")[+!+[]]+(![]+"")[+!+[]+!+[]+!+[]]+(!![]+"")[+[]]+undefined+([]["fill"]["constructor"](https://github.com/your-username/jsfuck-vscode-extension/blob/HEAD/"return String.fromCharCode(119)")())+([]["fill"]["constructor"](https://github.com/your-username/jsfuck-vscode-extension/blob/HEAD/"return String.fromCharCode(104)")())+([][[]]+"")[+!+[]+!+[]+!+[]+!+[]+!+[]]+(!![]+"")[+[]]+(![]+"")[+!+[]+!+[]+!+[]+!+[]]+([]["fill"]["constructor"](https://github.com/your-username/jsfuck-vscode-extension/blob/HEAD/"return String.fromCharCode(76)")())+([][[]]+"")[+!+[]+!+[]+!+[]+!+[]+!+[]]+(![]+"")[+!+[]+!+[]+!+[]]+...))()

⚠️ 重要提示

  1. 文件大小: JSFuck 混淆会显著增加文件大小(通常30-50倍),请谨慎使用
  2. 性能影响: 混淆后的代码执行性能会有所下降
  3. 调试困难: 混淆后的代码极难调试,建议只对生产环境使用
  4. 备份重要: 混淆前请确保有代码备份

🔧 命令列表

命令 快捷键 描述
jsfuck.obfuscate Ctrl+Shift+J 混淆选中代码
jsfuck.deobfuscate Ctrl+Shift+Alt+J 还原 JSFuck 代码
jsfuck.obfuscateFile - 混淆整个文件
jsfuck.createBackup - 创建备份并混淆

🎮 键盘快捷键

  • Windows/Linux:
    • 混淆: Ctrl+Shift+J
    • 还原: Ctrl+Shift+Alt+J
  • Mac:
    • 混淆: Cmd+Shift+J
    • 还原: Cmd+Shift+Alt+J

📚 技术原理

JSFuck 是一种基于 JavaScript 语言特性的编程技巧,它利用了:

  1. 类型转换: [] + [] = ""、![] = false
  2. 数组访问: "hello"[0] = "h"
  3. 函数构造: []["fill"]["constructor"] 获取 Function 构造器
  4. 字符生成: 通过各种技巧生成所需的字符

更多技术细节请参考 JSFuck 项目。

🐛 问题反馈

如果遇到问题,请在 GitHub Issues 中反馈。

📄 许可证

MIT License - 详见 LICENSE 文件。

🤝 贡献

欢迎提交 Pull Request 来改进这个项目!


享受 JSFuck 混淆带来的乐趣! 🎉

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2025 Microsoft