gpt4 book ai didi

javascript - C# 如何识别缩小版 JavaScript?

转载 作者:行者123 更新时间:2023-11-28 07:28:53 25 4
gpt4 key购买 nike

我只是在 C# 应用程序中读取 JavaScript 文件,我需要知道 JavaScript 文件是否已缩小。我能想到的唯一方法是计算以下比率,

缩小比例 = 换行数/文件大小

因此,在非缩小文件中,该值会更高,而在缩小文件中,该值会更小(可能小于 1)。

有没有更好的方法来做到这一点?

谢谢。

最佳答案

UglifyJS2 有类似 --beautify 的选项它保留新行,正确的方法是使用正则表达式 Paul S建议或JInt的解析器,JavascriptParser.cs .

使用正则表达式查找function\((?<var>([a-z][a-z0-9]*)(,|\)并检查所有 var 组的长度是否非常小。您可以检查根据变量长度声明的变量总数。

如果您想要更高级的版本,那么您可以使用 JInt 的 JavaScriptParser,它提供了抽象语法树,您可以在其中识别以下检查。

  1. 平均函数参数字符串长度是否小于 2,因为所有函数都定义为 function(a,b,c)...
  2. 您在 bool 比较表达式中遇到 !0 或 1 而不是“true”,以及 !1 或 0 而不是 false。
  3. 其他常见的缩小表达式,例如围绕大部分的 eval。

关于javascript - C# 如何识别缩小版 JavaScript?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29331621/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com