ЛУЧШИЙ САЙТ ДЛЯ РАЗРАБОТЧИКОВ
×

JavaScript учебник

JS HOME JS Introduction JS Where To JS Output JS Statements JS Syntax JS Comments JS Variables JS Operators JS Arithmetic JS Assignment JS Data Types JS Functions JS Objects JS Scope JS Events JS Strings JS String Methods JS Numbers JS Number Methods JS Arrays JS Array Methods JS Array Sort JS Array Iteration JS Dates JS Date Formats JS Date Get Methods JS Date Set Methods JS Math JS Random JS Booleans JS Comparisons JS Conditions JS Switch JS Loop For JS Loop While JS Break JS Type Conversion JS Bitwise JS RegExp JS Errors JS Debugging JS Hoisting JS Strict Mode JS this Keyword JS Style Guide JS Best Practices JS Mistakes JS Performance JS Reserved Words JS Versions JS Version ES5 JS Version ES6 JS JSON

JS Forms

JS Forms Forms API

JS Objects

Object Definitions Object Properties Object Methods Object Constructors Object Prototypes

JS Functions

Function Definitions Function Parameters Function Invocation Function Call Function Apply Function Closures

JS HTML DOM

DOM Intro DOM Methods DOM Document DOM Elements DOM HTML DOM CSS DOM Animations DOM Events DOM Event Listener DOM Navigation DOM Nodes DOM Collections DOM Node Lists

JS Browser BOM

JS Window JS Screen JS Location JS History JS Navigator JS Popup Alert JS Timing JS Cookies

JS AJAX

AJAX Intro AJAX XMLHttp AJAX Request AJAX Response AJAX XML File AJAX PHP AJAX ASP AJAX Database AJAX Applications

JS JSON

JSON Intro JSON Syntax JSON vs XML JSON Data Types JSON Objects JSON Arrays JSON Parse JSON Stringify JSON PHP JSON HTML JSON JSONP

JS References

JavaScript Objects HTML DOM Objects


JavaScript Руководство по стилю и соглашения о кодировании


Всегда используйте одинаковые правила кодирования для всех ваших проектов JavaScript.


Соглашения о кодировании JavaScript

Соглашения о кодировании — это руководство по стилю программирования. Они обычно охватывают:

  • Правила именования и объявления для переменных и функций.
  • Правила использования пробелов, отступов и комментариев.
  • Практика и принципы программирования

Правила кодирования безопасное качество:

  • Улучшает читаемость кода
  • Упростить обслуживание кода

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

На этой странице описаны общие соглашения о коде JavaScript, используемые html5 css.
Вы также должны прочитать следующую главу "рекомендации" и узнать, как избежать ошибок кодирования.


Имена переменных

В html5 css мы используем camelCase для имен идентификаторов (переменных и функций).

Все имена начинаются с буквы.

В нижней части этой страницы вы найдете более широкое обсуждение правил именования.

firstName = "John";
lastName = "Doe";

price = 19.90;
tax = 0.20;

fullPrice = price + (price * tax);

Пространства вокруг операторов

Всегда ставьте пробелы вокруг операторов (= +-*/), и после запятой:

Примеры:

var x = y + z;
var values = ["Volvo", "Saab", "Fiat"];


Отступ кода

Всегда используйте 4 пробела для отступа блоков кода:

Функции:

function toCelsius(fahrenheit) {
    return (5 / 9) * (fahrenheit - 32);
}

Не используйте вкладки (таблицы) для отступа. Различные редакторы интерпретируют вкладки по-разному.


Правила операторов

Общие правила для простых инструкций:

  • Всегда заканчивайте простой оператор точкой с запятой.

Примеры:

var values = ["Volvo", "Saab", "Fiat"];

var person = {
    firstName: "John",
    lastName: "Doe",
    age: 50,
    eyeColor: "blue"
};

Общие правила для сложных (составных) операторов:

  • Поместите открывающую скобку в конец первой линии.
  • Используйте один пробел перед открывающей скобкой.
  • Поместите закрывающую скобку на новую линию без пробелов.
  • Не заканчивайте сложный оператор точкой с запятой.

Functions:

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 не умещается на одной строке, лучше всего ее разбить, после оператора или запятой.

Пример

document.getElementById("demo").innerHTML =
    "Hello Dolly.";

Соглашения об именовании

Всегда используйте одно и то же соглашение об именах для всего кода. Например:

  • Имена переменных и функций, написанные как camelCase
  • Глобальные переменные, написанные в верхнем регистре (мы не, но это довольно часто)
  • Константы (например, PI), написанные в верхнем регистре

Если вы используете Hyp-кур, camelCase, или ундер_скорес в именах переменных?

Это вопрос, который часто обсуждают программисты. Ответ зависит от того, кого вы спрашиваете:

Дефисы в HTML и CSS:

Атрибуты HTML5 могут начинаться с данных-(данные-количество, данные-цена).

CSS использует дефисы в именах свойств (размер шрифта).

Дефисы можно ошибочно считать попытками вычитания. Дефисы не допускаются в именах JavaScript.

Подчеркивает:

Многие программисты предпочитают использовать подчеркивания (дате_оф_бирс), особенно в базах данных SQL.

Подчеркивания часто используются в документации PHP.

Паскалкасе:

Паскалкасе часто предпочитают программисты C.

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")

If possible, use the same naming convention (as JavaScript) in HTML.

Visit the HTML Style Guide.


Расширения файлов

HTML-файлы должны иметь расширение .HTML (не .htm).

CSS-файлы должны иметь расширение .CSS .

JavaScript-файлы должны иметь расширение .js .


Использовать имена файлов нижнего регистра

Большинство веб-серверов (Apache, UNIX) чувствительны к регистру имен файлов:

Лондон. jpg не может быть доступен как London. jpg.

Другие веб-серверы (Microsoft, IIS) не чувствительны к регистру:

Лондон. jpg можно получить как Лондон. jpg или Лондон. jpg.

Если вы используете смесь верхнего и нижнего регистра, вы должны быть очень последовательны.

Если вы переходите от регистра к регистру, то даже небольшие ошибки могут нарушить ваш веб-сайт.

Чтобы избежать этих проблем, всегда используйте имена файлов нижнего регистра (если это возможно).


Производительности

Соглашения о кодировании не используются компьютерами. Большинство правил мало влияют на выполнение программ.

Отступы и лишние пробелы не имеют большого значение в небольших скриптах.

Для кода в разработке следует предпочесть удобочитаемость. Более крупные сценарии производства должны быть minified.