8

是否有任何工具可以检测 JavaScript 中的代码重复?我尝试了“PMD 重复代码检测器”,但它不支持 .js 扩展名。

4

4 回答 4

8

我会推荐JSCPD

安装

npm install -g jscpd

jscpd ./path/to/code

(你有几种类型的记者,默认是控制台,但你可以像这样使用html jscpd -r html ./path/to/code:)

其他解决方案:

  • JSinspect 对我不好,因为不支持 .ts 和 .tsx(jscpd 支持150 多种格式
  • InteliJ IDE(我是它们的忠实粉丝)似乎无法正常工作,因为 WebStorm 没有发现重复的代码。
于 2019-06-19T14:50:52.150 回答
2

您可以使用JS Inspect它检测复制粘贴和结构相似的代码,还支持*.js

安装

npm install -g jsinspect

jsinspect -t 50 ./path/to/src
于 2017-12-22T12:17:09.787 回答
0

我建议查看这个线程(也在 stackoverflow 上): Javascript 源代码分析(特别是重复检查)

于 2011-02-06T18:52:24.563 回答
0

IDE 可以有这个功能。我使用 IntelliJ,这个 IDE 在 2 个范围内有一个内置的重复代码检查机制:

  • 内联:在编辑器中打开重复代码时,会带有下划线,以便开发人员轻松捕获并进行重构。
  • 分析:转到菜单分析->定位重复项..,指定要运行的范围并列出所有重复项。
于 2017-08-10T07:13:01.373 回答