【问题标题】:Is there a plugin that allows me to automatically unminify the Javascript included on a site? [closed]是否有一个插件可以让我自动取消网站上包含的 Javascript? [关闭]
【发布时间】:2011-05-15 19:48:55
【问题描述】:

是否有插件、附加组件、Greasemonkey 脚本或类似的东西(最坏的情况是易于使用的代理?)可以自动取消压缩网站上包含的 Javascript 文件?

我知道例如jsbeautifier.org 但在外部执行此操作不允许我在未缩小的代码中设置断点,例如。

我的典型用例:

  • 分析和学习复杂的 Web 前端。
  • 调试与现有代码交互的 Greasemonkey 脚本。

我主要对与 Firebug 配合使用的解决方案感兴趣,但如果有适用于 Chrome 或 Opera 的开发工具的东西,我也想听听。

【问题讨论】:

标签: javascript firebug minify


【解决方案1】:

目前的工具无法实现。显示 eval 脚本是你能得到的最多的。 Jsbeautifier.org 是一个很好的open 东西,有人可以将它集成到 info firebug。

【讨论】:

    【解决方案2】:

    Venkman JavaScript 调试器有一个漂亮的打印机。

    还有一个extension 用于 Fiddler 代理。

    IE9 开发者工具还有一个“格式化 javascript”选项(参见“F12 开发者工具和格式化缩小脚本”here

    【讨论】:

    • 提琴手工作得很好。有点慢,但是当您尝试取消缩小和重新格式化大型 web 应用程序时,这是您必须期待的。不是我喜欢的解决方案(希望看到直接的 Firebug 集成),但这是可行的。谢谢!
    • Fiddler 扩展已于 2011 年 10 月更新,并带有评论“比旧版本快大约 300 倍,并且不太可能破坏格式错误的脚本。”
    【解决方案3】:

    如果脚本仅针对空白进行了缩小,则提供的某些解决方案可能会起作用。正如您所提到的,JSBeautifier 是一个有用的工具。

    但是,如果您正在查看的 JavaScript 已使用 YUI CompressorGoogle Closure Compiler 等工具进行压缩,则变量将会缩短且更难理解。

    要查看实际效果,请比较 jQuery 的缩小版和未缩小版(缩小版使用 Closure 编译器)。

    为了学习 JavaScript,我建议从一些最好的 JavaScript 开发人员编写的库和插件中学习。查看jQueryYUIMoo Tools 的源代码。查看John ResigThomas Fuchs 之类的人在GitHub 上的代码。阅读DailyJs 并查看他的示例。

    我希望其中一些工具可以帮助您在学习过程中。这些是对我帮助最大的资源。

    【讨论】:

    • 我不关心这种情况下变量名的丢失,只要我可以设置断点。
    【解决方案4】:

    有人把 JSBeautifier 做成了 Firebug 插件:

    https://addons.mozilla.org/en-US/firefox/addon/javascript-deminifier/

    这让我今天很开心!

    【讨论】:

    • 我想为此点赞一百万次。 谢谢!(感谢 Tim Stone 向我提及这个答案!)
    • 哦,真漂亮。而且速度惊人,比 Fiddler 解决方案快得多。不敢相信我以前没有发现过。
    • 很遗憾,该插件已不再维护,并且不适用于 Firefox 4。
    • 脚本已更新以支持 3.6-5.*
    • 对于那些读到它不起作用的人,它在 Firefox 20.0.1 上对我来说非常好
    【解决方案5】:

    Webkit/Chromium 现在也可以做到这一点,请参阅 Webkit Bug 57942Changeset 83713Peter Beverloo's change summary post mentioning this

    不要问我从哪个版本的 Chromium/Chrome 开始可用,但如果您知道,请随时在此处提及。 :)

    【讨论】:

      【解决方案6】:

      在 chrome 13+ 中,有“漂亮的打印”。

      1. 右键单击“检查元素”
      2. 转到脚本选项卡
      3. 单击右下角的花括号。

      【讨论】:

      【解决方案7】:

      仅供参考 - 在 IE9 的 F12 开发人员工具中提供相同的功能:打开脚本选项卡,选择按钮栏上的锤子/扳手按钮(“配置”),然后选择“格式化 JavaScript”。

      【讨论】:

        【解决方案8】:

        PrettyPrint 是一个不错的 chrome 扩展,它在使用常规 (Ctrl-U) 源代码时会自动取消压缩 js。

        你可以在这里得到它:

        https://chrome.google.com/webstore/detail/prettyprint/nipdlgebaanapcphbcidpmmmkcecpkhg/

        【讨论】:

          【解决方案9】:

          Firefox Firefox 开发者工具的“Auto Prettify Minified Sources”设置默认开启Prettify Source 功能。

          启用它:

          • 打开 Firefox 开发者工具 (Ctrl + Shift + I)
          • 调试器选项卡
          • “调试器”选项卡右上角的引擎图标,不是全局设置引擎

          这记录在:https://developer.mozilla.org/en-US/docs/Tools/Debugger/How_to/Pretty-print_a_minified_file

          在 Firefox 42 上测试。

          【讨论】:

          • 无法理解为什么漂亮的打印可用于他们的调试器,但不能用于他们的样式编辑器
          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2023-03-11
          • 1970-01-01
          • 1970-01-01
          • 2012-01-09
          相关资源
          最近更新 更多