0 added
0 removed
Original
2026-01-01
Modified
2026-03-10
1
<p>Синтаксис JavaScript представляет собой перечень правил, регламентирующих создание программ на JavaScript. В этой статье мы ознакомимся с базовыми лексическими структурами этого известного языка программирования.</p>
1
<p>Синтаксис JavaScript представляет собой перечень правил, регламентирующих создание программ на JavaScript. В этой статье мы ознакомимся с базовыми лексическими структурами этого известного языка программирования.</p>
2
<h2>Набор символов</h2>
2
<h2>Набор символов</h2>
3
<p>Когда разработчики пишут программы на JS, они используют набор символов Unicode. Это 16-разрядная кодировка, поддерживающая почти все письменные языки мира. При этом согласно стандарту ECMAScript v3, JavaScript должна поддерживать Unicode версии от 2.1. Если же говорить о стандарте ECMAScript v5, то он требует поддержки Unicode версии 3 и выше. Но, как правило, в большинстве случаев при программировании на JS вы будете работать либо с кириллицей, либо с латиницей:</p>
3
<p>Когда разработчики пишут программы на JS, они используют набор символов Unicode. Это 16-разрядная кодировка, поддерживающая почти все письменные языки мира. При этом согласно стандарту ECMAScript v3, JavaScript должна поддерживать Unicode версии от 2.1. Если же говорить о стандарте ECMAScript v5, то он требует поддержки Unicode версии 3 и выше. Но, как правило, в большинстве случаев при программировании на JS вы будете работать либо с кириллицей, либо с латиницей:</p>
4
var str = "Hello, OTUS!"; var стр = "Привет, Отус!";<h2>Пробельные символы</h2>
4
var str = "Hello, OTUS!"; var стр = "Привет, Отус!";<h2>Пробельные символы</h2>
5
<p>JS-интерпретатор игнорирует все пробелы, которые присутствуют между языковыми конструкциями, воспринимая код программы в качестве сплошного потока.</p>
5
<p>JS-интерпретатор игнорирует все пробелы, которые присутствуют между языковыми конструкциями, воспринимая код программы в качестве сплошного потока.</p>
6
<p>Также JavaScript в большинстве случаев игнорирует символы перевода строки. Это значит, что обычно символы перевода строки и пробелы можно без каких-либо ограничений применять в программах в целях форматирования кода и придания ему удобочитаемости.</p>
6
<p>Также JavaScript в большинстве случаев игнорирует символы перевода строки. Это значит, что обычно символы перевода строки и пробелы можно без каких-либо ограничений применять в программах в целях форматирования кода и придания ему удобочитаемости.</p>
7
<p>Пробелы, разумеется, повышают читаемость кода, однако они, как правило, не влияют на функциональность JavaScript-сценария.</p>
7
<p>Пробелы, разумеется, повышают читаемость кода, однако они, как правило, не влияют на функциональность JavaScript-сценария.</p>
8
<p>Чтобы улучшить читаемость кода, используются и символы конца строки. Но тут следует учитывать, что иногда они оказывают влияние на исполнение JavaScript-кода, поэтому в некоторых случаях их использование запрещается. Кроме того, символы конца строки оказывают влияние на автоматическую установку точки с запятой.</p>
8
<p>Чтобы улучшить читаемость кода, используются и символы конца строки. Но тут следует учитывать, что иногда они оказывают влияние на исполнение JavaScript-кода, поэтому в некоторых случаях их использование запрещается. Кроме того, символы конца строки оказывают влияние на автоматическую установку точки с запятой.</p>
9
<h2>Точка с запятой</h2>
9
<h2>Точка с запятой</h2>
10
<p>Любая программа языка программирования JavaScript - это, по сути, перечень "инструкций", выполняемых браузером. А инструкции в JavaScript обычно разделяют точкой с запятой.</p>
10
<p>Любая программа языка программирования JavaScript - это, по сути, перечень "инструкций", выполняемых браузером. А инструкции в JavaScript обычно разделяют точкой с запятой.</p>
11
<p>Таким образом, если на одной строке располагается несколько инструкций, между ними ставят (;).</p>
11
<p>Таким образом, если на одной строке располагается несколько инструкций, между ними ставят (;).</p>
12
<script> alert("Сообщение № 1"); alert("Сообщение № 2"); </script><p>В большинстве случаев язык JavaScript воспринимает переход на новую строчку в качестве разделителя команд и обеспечивает для завершения инструкций автоматический ввод точек с запятой (ASI). Если же каждая инструкция находится на отдельной строке, можно разделитель не писать:</p>
12
<script> alert("Сообщение № 1"); alert("Сообщение № 2"); </script><p>В большинстве случаев язык JavaScript воспринимает переход на новую строчку в качестве разделителя команд и обеспечивает для завершения инструкций автоматический ввод точек с запятой (ASI). Если же каждая инструкция находится на отдельной строке, можно разделитель не писать:</p>
13
<script> alert("Сообщение № 1") alert("Сообщение № 2") </script><p>Кроме того, одна инструкция может находиться на нескольких строчках:</p>
13
<script> alert("Сообщение № 1") alert("Сообщение № 2") </script><p>Кроме того, одна инструкция может находиться на нескольких строчках:</p>
14
<script> var name = "Otus"; alert("Я хочу учиться в, " + name + "!"); </script><p>Здесь интерпретатор JavaScript будет ожидать завершения выражения, поэтому не станет автоматически вставлять "виртуальную" точку с запятой между строчками.</p>
14
<script> var name = "Otus"; alert("Я хочу учиться в, " + name + "!"); </script><p>Здесь интерпретатор JavaScript будет ожидать завершения выражения, поэтому не станет автоматически вставлять "виртуальную" точку с запятой между строчками.</p>
15
<p>Однако рекомендуют всё же добавлять точки с запятой, что позволит избежать возможных проблем. То есть точки запятой необязательны, но лучше всё же сразу научиться добавлять их самостоятельно - сегодня этому правилу следуют многие большие проекты. Считается, что такая практика не только предотвращает возможные ошибки, но и повышает быстродействие, т. к. синтаксические анализаторы языка JavaScript не пытаются исправлять предполагаемые ошибки и добавлять недостающие (;).</p>
15
<p>Однако рекомендуют всё же добавлять точки с запятой, что позволит избежать возможных проблем. То есть точки запятой необязательны, но лучше всё же сразу научиться добавлять их самостоятельно - сегодня этому правилу следуют многие большие проекты. Считается, что такая практика не только предотвращает возможные ошибки, но и повышает быстродействие, т. к. синтаксические анализаторы языка JavaScript не пытаются исправлять предполагаемые ошибки и добавлять недостающие (;).</p>
16
<h2>О чувствительности к регистру</h2>
16
<h2>О чувствительности к регистру</h2>
17
<p>В языке программирования JavaScript все элементы чувствительны к регистру. Это и имена переменных, и имена функций, и имена операторов. Все они должны всегда содержать одинаковые наборы как строчных, так и прописных букв.</p>
17
<p>В языке программирования JavaScript все элементы чувствительны к регистру. Это и имена переменных, и имена функций, и имена операторов. Все они должны всегда содержать одинаковые наборы как строчных, так и прописных букв.</p>
18
<p>К примеру, num, NUM и Num являются разными переменными:</p>
18
<p>К примеру, num, NUM и Num являются разными переменными:</p>
19
<script> var num = 5; var NUM = 7; var Num = 9; document.write("num: " + num + "<br> NUM: " + NUM + "<br> Num: " + Num); </script><p>В этом легко убедиться, выполнив код выше, т. к. результат будет следующим:</p>
19
<script> var num = 5; var NUM = 7; var Num = 9; document.write("num: " + num + "<br> NUM: " + NUM + "<br> Num: " + Num); </script><p>В этом легко убедиться, выполнив код выше, т. к. результат будет следующим:</p>
20
<h2>Комментарии в JavaScript</h2>
20
<h2>Комментарии в JavaScript</h2>
21
<p>Применение комментариев позволяет разработчикам выделять фрагменты программы, не выполняемые JS-интерпретатором, а используемые лишь для пояснений.</p>
21
<p>Применение комментариев позволяет разработчикам выделять фрагменты программы, не выполняемые JS-интерпретатором, а используемые лишь для пояснений.</p>
22
<p>В языке программирования JavaScript комментарии бывают многострочными и однострочными.</p>
22
<p>В языке программирования JavaScript комментарии бывают многострочными и однострочными.</p>
23
<p>Однострочные начинаются с двойного слэша:</p>
23
<p>Однострочные начинаются с двойного слэша:</p>
24
<script> // Объявляется переменная var num = 5; alert( num ); // Выводится переменная </script><p>Что касается многострочного комментария, то он начинается со слэша и звёздочки (/<em>), а оканчивается теми же знаками, но в обратном порядке: (</em>/):</p>
24
<script> // Объявляется переменная var num = 5; alert( num ); // Выводится переменная </script><p>Что касается многострочного комментария, то он начинается со слэша и звёздочки (/<em>), а оканчивается теми же знаками, но в обратном порядке: (</em>/):</p>
25
<script> /* Комментируем целый блок кода var num = 6; alert( num ); */ /* Следующий блок не комментируем */ alert('Hello, Otus!'); </script><p>Опытные разработчики советуют не пренебрегать комментариями, т. к. это поможет вам разобраться в своём же коде, скажем, через месяц. Если же в процессе программирования на JavaScript какой-то участок кода вроде как не нужен, то не стоит его удалять до конца отладки программы, т. к. отвергнутое вами же решение может всё-таки пригодиться. Закомментировать несложно, а удалить всегда успеете.</p>
25
<script> /* Комментируем целый блок кода var num = 6; alert( num ); */ /* Следующий блок не комментируем */ alert('Hello, Otus!'); </script><p>Опытные разработчики советуют не пренебрегать комментариями, т. к. это поможет вам разобраться в своём же коде, скажем, через месяц. Если же в процессе программирования на JavaScript какой-то участок кода вроде как не нужен, то не стоит его удалять до конца отладки программы, т. к. отвергнутое вами же решение может всё-таки пригодиться. Закомментировать несложно, а удалить всегда успеете.</p>
26
<h2>Идентификаторы в JavaScript</h2>
26
<h2>Идентификаторы в JavaScript</h2>
27
<p>Идентификаторы в JS выступают в роли имён функций, переменных, свойств объекта и т. п. Они представляет собой последовательность цифр, букв, символов подчёркивания (_) и знака доллара ($). При этом в процессе наименования идентификатора цифра не должна быть первым символом.</p>
27
<p>Идентификаторы в JS выступают в роли имён функций, переменных, свойств объекта и т. п. Они представляет собой последовательность цифр, букв, символов подчёркивания (_) и знака доллара ($). При этом в процессе наименования идентификатора цифра не должна быть первым символом.</p>
28
<p>Как правило, обычно применяют лишь символы ASCII и цифры. Хотя в ECMAScript v3 для идентификации могут использоваться буквы из всего символьного набора Unicode.</p>
28
<p>Как правило, обычно применяют лишь символы ASCII и цифры. Хотя в ECMAScript v3 для идентификации могут использоваться буквы из всего символьного набора Unicode.</p>
29
<p>Для объединения нескольких слов при записи разработчики применяют разные способы, но на сегодняшний день существуют 2 негласных стиля: - snake_case; - camelCase.</p>
29
<p>Для объединения нескольких слов при записи разработчики применяют разные способы, но на сегодняшний день существуют 2 негласных стиля: - snake_case; - camelCase.</p>
30
<p>В JavaScript чаще всего используют "верблюжью" нотацию, когда первая буква строчная, а первые буквы последующих слов - прописные:</p>
30
<p>В JavaScript чаще всего используют "верблюжью" нотацию, когда первая буква строчная, а первые буквы последующих слов - прописные:</p>
31
var firstLesson; var myJob = "developer"; var doSomethingImportant;<p>Однако это не является обязательным требованием.</p>
31
var firstLesson; var myJob = "developer"; var doSomethingImportant;<p>Однако это не является обязательным требованием.</p>
32
<p><em>Примечание</em>: в JavaScript запрещено объединять несколько слов с помощью дефисов, т. к. они зарезервированы для математических вычислений.</p>
32
<p><em>Примечание</em>: в JavaScript запрещено объединять несколько слов с помощью дефисов, т. к. они зарезервированы для математических вычислений.</p>
33
<h2>Ключевые и зарезервированные слова в JavaScript</h2>
33
<h2>Ключевые и зарезервированные слова в JavaScript</h2>
34
<p>Существует набор keywords, которых нельзя применять в качестве идентификаторов. Дело в том, что эти слова уже зарезервированы в языке программирования и несут определенное значение, то есть являются частью синтаксиса. Если вы попытаетесь использовать такое слово в роли идентификатора, получите ошибку.</p>
34
<p>Существует набор keywords, которых нельзя применять в качестве идентификаторов. Дело в том, что эти слова уже зарезервированы в языке программирования и несут определенное значение, то есть являются частью синтаксиса. Если вы попытаетесь использовать такое слово в роли идентификатора, получите ошибку.</p>
35
<h2>Заключение</h2>
35
<h2>Заключение</h2>
36
<p>Итак, подведём итоги: - JavaScript-интерпретатор игнорирует все пробелы, воспринимая код как сплошной поток; - рекомендуется не пропускать точки с запятой - это плохая практика программирования; - все JavaScript-элементы чувствительны к регистру; - не ленитесь использовать комментарии в своём коде! - идентификаторы выступают в виде имён функций, переменных и свойств объекта и состоят из букв, цифр, символов подчёркивания, знаков доллара; - ключевые и зарезервированные слова в JavaScript нельзя применять для наименования переменных, объектов и функций.</p>
36
<p>Итак, подведём итоги: - JavaScript-интерпретатор игнорирует все пробелы, воспринимая код как сплошной поток; - рекомендуется не пропускать точки с запятой - это плохая практика программирования; - все JavaScript-элементы чувствительны к регистру; - не ленитесь использовать комментарии в своём коде! - идентификаторы выступают в виде имён функций, переменных и свойств объекта и состоят из букв, цифр, символов подчёркивания, знаков доллара; - ключевые и зарезервированные слова в JavaScript нельзя применять для наименования переменных, объектов и функций.</p>
37
<p><em><a>Источник</a></em></p>
37
<p><em><a>Источник</a></em></p>
38
38