Об этом проекте
Руководство по стилю JavaScript от Airbnb — «Преимущественно разумный подход к JavaScript». Этот репозиторий — известный набор соглашений для написания чистого, последовательного JavaScript, особенно современного кода ES6+. Он поддерживается вместе с пакетом конфигурации ESLint (`eslint-config-airbnb`) и его базовым вариантом (`eslint-config-airbnb-base`).
Руководство предполагает использование Babel и рекомендует сопутствующие пакеты, такие как `babel-preset-airbnb` и `airbnb-browser-shims` для полифилов.
Руководство организовано в короткие пронумерованные разделы с обоснованиями и примерами кода, показывающими «плохие» и «хорошие» шаблоны. Рассматриваемые темы включают:
- Типы и ссылки: предпочитайте `const`, используйте `let`, когда требуется переназначение, избегайте `var`.
- Объекты и массивы: литеральный синтаксис, сокращения, spread-операторы и безопасный доступ к свойствам.
- Деструктуризация объектов и массивов.
- Строки: одинарные кавычки, шаблонные литералы для интерполяции, избегайте `eval()`.
- Функции: именованные выражения, обёртка IIFE, никогда не объявляйте функции внутри блоков, используйте rest-параметры вместо `arguments`.
- Стрелочные функции, классы и конструкторы, модули, итераторы и генераторы.
- Свойства, переменные, поднятие (hoisting), операторы сравнения и равенство, блоки, управляющие инструкции.
- Комментарии, пробелы, запятые, точки с запятой.
- Приведение и преобразование типов, соглашения об именовании, аксессоры, события.
- Замечания по использованию jQuery, совместимость с ECMAScript 5, стили ES6+, стандартная библиотека, тестирование и производительность.
- Ресурсы, ссылки на сообщество, переводы, участники и лицензия.
Каждое правило сопровождается применимыми названиями правил ESLint, где это уместно, что делает руководство полезным как в качестве документации, так и в качестве основы для автоматизированного линтинга. Оно также ссылается на связанные руководства по стилю: ES5 (устаревшее), React, CSS-in-JavaScript, CSS и Sass, а также Ruby. Репозиторий был переведён на ряд языков и широко цитируется в сообществе JavaScript.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.