JavaScript Руководство стиля
Всегда используйте одни и те же соглашения о кодировании для всех своих проектов JavaScript.
Соглашения о кодировании JavaScript
Соглашения о кодировании - это рекомендации по стилю программирования. Обычно они охватывают:
- Правила именования и объявления для переменных и функций.
- Правила использования пробелов, отступов и комментариев.
- Практики и принципы программирования.
Соглашения о кодировании безопасного качества:
- Улучшает читаемость кода
- Упростите обслуживание кода
Соглашения о кодировании могут быть задокументированными правилами, которым должны следовать команды, или просто вашей индивидуальной практикой кодирования.
На этой странице описаны общие соглашения о коде JavaScript, используемые Schoolsw3.
Вам также следует прочитать следующую главу "Лучше практика" и узнать, как избежать ошибок при кодировании.
Имена переменных
В Schoolsw3 мы используем camelCase для имен идентификаторов (переменных и функций).
Все имена начинаются с letter.
Внизу страницы вы найдете более широкое обсуждение правил именования.
firstName = "John";
lastName = "Doe";
price = 19.90;
tax = 0.20;
fullPrice = price + (price * tax);
Пространства вокруг операторов
Всегда ставьте пробелы вокруг операторов (= + - * /) и после запятых:
Примеры:
var x = y + z;
var values = ["Volvo", "Saab",
"Fiat"];
Отступы в коде
Всегда используйте 2 пробела для отступов кодовых блоков:
Functions:
function toCelsius(fahrenheit) {
return (5 / 9) * (fahrenheit - 32);
}
Не используйте таблицы (табуляторы) для отступов. Разные редакторы по-разному интерпретируют вкладки.
Правила заявления
Общие правила для простых утверждений:
- Всегда заканчивайте простое заявление точкой с запятой.
Примеры:
var values = ["Volvo", "Saab",
"Fiat"];
var person = {
firstName: "John",
lastName: "Doe",
age: 50,
eyeColor:
"blue"
};
Общие правила для сложных (составных) заявлений:
- Поместите открывающую скобку в конец первой строки.
- Используйте один пробел перед открывающей скобкой.
- Поместите закрывающую скобку на новую строку без пробелов в начале.
- Не заканчивайте сложное заявление точкой с запятой.
Функции:
function toCelsius(fahrenheit) {
return (5 / 9) * (fahrenheit - 32);
}
Цикл:
for (i = 0; i < 5; i++) {
x += i;
}
Условные обозначения:
if (time < 20) {
greeting = "Good day";
} else {
greeting = "Good evening";
}
Правила объекта
Общие правила определения объектов:
- Разместите открывающую скобку на той же строке, что и имя объекта.
- Используйте двоеточие плюс один пробел между каждым свойством и его значением.
- Используйте кавычки вокруг строковых значений, а не вокруг числовых значений.
- Не добавляйте запятую после последней пары "свойство-значение".
- Поместите закрывающую скобку на новую строку без пробелов в начале.
- Всегда заканчивайте определение объекта точкой с запятой.
Пример
var person = {
firstName: "John",
lastName: "Doe",
age: 50,
eyeColor:
"blue"
};
Короткие объекты могут быть записаны сжатыми в одну строку, используя только пробелы между свойствами, например:
var person = {firstName:"John", lastName:"Doe", age:50, eyeColor:"blue"};
Длина линии < 80
Для удобства чтения избегайте строк длиной более 80 символов.
Если оператор JavaScript не умещается в одной строке, лучше всего его разорвать после оператора или запятой.
Соглашения об именах
Всегда используйте одно и то же соглашение об именах для всего кода. Например:
- Имена переменных и функций записываются как camelCase
- Глобальные переменные написаны UPPERCASE (мы этого не делаем, но это довольно часто)
- Константы (например, PI) записываются UPPERCASE
Если вы используете hyp-hens, camelCase, или under_scores в именах переменных?
Программисты часто обсуждают этот вопрос. Ответ зависит от того, кого вы спрашиваете:
Дефисы в HTML и CSS:
Атрибуты HTML5 могут начинаться с data- (data-quantity, data-price).
CSS использует дефисы в именах свойств (font-size).
Дефисы могут быть ошибочно приняты за попытки вычитания. В именах JavaScript нельзя использовать дефисы.
Подчеркивания::
Многие программисты предпочитают использовать символы подчеркивания (date_of_birth), особенно в базах данных SQL.
Подчеркивание часто используется в документации PHP.
PascalCase:
Программисты на C. часто предпочитают PascalCase.
camelCase:
camelCase используется самим JavaScript, jQuery и другими библиотеками JavaScript.
Не начинайте имена со знака $. Это приведет к конфликту со многими именами библиотек JavaScript.
Загрузка JavaScript в HTML
Используйте простой синтаксис для загрузки внешних скриптов (атрибут type не нужен):
<script src="myscript.js"></script>
Доступ к HTML элементам
Последствие использования "неаккуратных" стилей HTML может привести к ошибкам JavaScript.
Эти два оператора JavaScript дадут разные результаты:
var obj =
getElementById("Demo")
var obj = getElementById("demo")
Если возможно, используйте то же соглашение об именах (как JavaScript) в HTML.
Посетите руководство по стилю HTML.
Расширения файлов
Файлы HTML должны иметь расширение .html ( разрешено .htm).
Файлы CSS должны иметь расширение .css.
Файлы JavaScript должны иметь расширение .js.
Используйте имена файлов в нижнем регистре
Большинство веб серверов (Apache, Unix) чувствительны к регистру имен файлов:
london.jpg недоступен как London.jpg.
Другие веб-серверы (Microsoft, IIS) не чувствительны к регистру:
london.jpg можно открыть как London.jpg или london.jpg.
Если вы используете сочетание верхнего и нижнего регистра, вы должны быть предельно последовательны.
Если вы перейдете с нечувствительного к регистру сервера на чувствительный к регистру сервер, даже небольшие ошибки могут сломать ваш веб-сайт.
Чтобы избежать этих проблем, всегда используйте имена файлов в нижнем регистре (если возможно).
Представление
Соглашения о кодировании не используются компьютерами. Большинство правил мало влияют на выполнение программ.
В маленьких скриптах отступы и лишние пробелы не имеют значения.
Для кода, находящегося в разработке, предпочтение следует отдавать удобочитаемости. Большие производственные скрипты следует минимизировать.
