【问题标题】:Can I re-construct the original JavaScript source file from a minified version and the corresponding source-map file?我可以从缩小版本和相应的源映射文件重新构建原始 JavaScript 源文件吗?
【发布时间】:2013-11-22 21:32:24
【问题描述】:

我正在从事一个必须静态分析 JavaScript 代码的项目。但是,对于一些库,我只能访问文件的缩小版本和相应的源映射。有没有一种方法/技术可以让我使用这些文件生成原始文件?

【问题讨论】:

  • 为什么不能在缩小状态下静态分析它们?
  • 我可以分析代码。但我需要检索一些对象的属性名称。
  • minifiers 通常不会弄乱对象的属性名称,除非它们非常激进,因为很难分析它们是如何被使用的。

标签: javascript node.js minify


【解决方案1】:

我找到了一个 node.js 库可以帮助做到这一点:Maximize 对应github repo

【讨论】:

  • 你用过吗?如果是这样,你有没有为新玩家找到任何陷阱?
  • 效果很好。虽然,它期望输入为 URL。您必须进行更改才能输入文件。
  • 不知道 Node JS 但我重写了 Maximize 以使用本地文件(并且实际上完全可以使用)。也许知道 node-js 的人想让这不可怕:github.com/timmc/unsourcemap
【解决方案2】:

如果您的目标是“只是”对我使用的原始源代码进行一次性重建:

Online Source Visualization

  1. 使用“自定义”选项
  2. 上传编译好的文件
  3. 上传源地图文件

根据文件大小,查看结果可能需要一段时间。

对应的repo是here

【讨论】:

    【解决方案3】:

    这个命令行工具真的很好用

    npx uglify-jsugly.js -b --source-map "filename='ugly.js.map'" -o beauty.js

    https://www.npmjs.com/package/uglify-js

    https://stackoverflow.com/a/70584632/13581139

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-12-15
      • 1970-01-01
      • 2014-12-24
      • 2020-04-07
      • 2016-03-15
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多