Как найти неиспользуемый / мертвый код в веб-проектах (90% кода в javascript)

Я нашел очень интересный инструмент для определения неиспользуемых определений css в веб-проекте. http://www.sitepoint.com/dustmeselectors/

существуют ли аналогичные инструменты также для проектов javascript?

С. П. Я знаю, что нет программы для детерминированного поиска неиспользуемого кода. Но я ищу отчет, чтобы определить возможный неиспользуемый код. Тогда последнее решение всегда будет за вами.

3 ответов


проблема в том, что нет способа быть действительно уверенным. Предположим следующее:

  1. начальный HTML-сайт практически пуст. Однако есть много кода JS, который, похоже, не используется.
  2. OnLoad, вызывается функция, которая запускает запрос AJAX на сервер. Сервер возвращает много HTML кода, который является телом сайта. Это тело содержит множество функций JavaScript.
  3. начальное тело заменяется телом, полученным через AJAX. Внезапно используется весь код.

утилиты статического анализа поэтому бесполезны. Я не знаю, существует ли расширение браузера, которое отмечает Все использование JS из работающего браузера.


вы можете попробовать использовать надгробия, чтобы безопасно найти и удалить мертвый код из вашего JavaScript.

https://blog.bugsnag.com/javascript-refactoring-with-bugsnag-and-tombstones/


наиболее быстро приходит на ум Javascript LINT (http://www.javascriptlint.com/) и JSLint (http://www.jslint.com/).

остерегайтесь, хотя: последнее ранит ваши чувства.