Эти инструменты статического анализа не имеют понятия файлов, только текстовое представление кода. Таким образом, они не идентифицируют неиспользуемые или дублирующие файлы. Для этого им необходимо знать, как вы развертываете файлы.
Они не идентифицируют неиспользуемые функции.
Они идентифицируют повторяющиеся функции в одном файле. По крайней мере, в большинстве случаев:
function a() {}
/* ... */
function a() {}
даст вам a is already defined
. Тем не менее:
var a;
a = function () {};
/* ... */
a = function () {};
совершенно законно и не выдаст вам ошибку.
Если вы хотите найти дубликаты функций во всех ваших файлах, вы можете просто объединить их вместе перед линтованием.