code duplication in javascript
Is there any tool to detect code duplication in JavaS开发者_如何学运维cript? I tried "PMD Duplicate code detector" but it is not supporting .js extension.
I would recommend JSCPD
Installation
npm install -g jscpd
Run
jscpd ./path/to/code
(you have several type of reporters, default is console, but you can use html like this: jscpd -r html ./path/to/code
)
Other solutions:
- JSinspect wasn't good for me because didn't support .ts and .tsx (jscpd supports 150+ formats
- InteliJ IDEs (I'm a big fan of them) don't seem to work since WebStorm found no duplicated code.
You can use JS Inspect it detects copy-pasted and structurally similar code, also supports *.js
Installation
npm install -g jsinspect
Run
jsinspect -t 50 ./path/to/src
I would recommend looking at this thread (also on stackoverflow): Javascript source code analysis ( specifically duplication checking )
IDE can have this functionality. I use IntelliJ, this IDE has a built-in duplicate code checking mechanism at 2 scopes:
- Inline: Duplicate codes are underlined when opened in editor so that developer can easily catch and do refactoring.
- Analysis: Go to menu Analyze->Locate Duplicates.., specify scope to run through and list all duplications.
精彩评论