Приложения на JavaScript состоят из инструкций с соответствующим синтаксисом. Одна инструкция может состоять из нескольких строк. На одной строке может находиться несколько инструкций, если они разделены точкой с запятой. Они являются не ключевыми словами, а группами ключевых слов.
Инструкции и объявления по категориям
Алфавитный список смотрите в боковой панели слева.
Управление потоком выполнения
- Блок
- Блок используется для группировки нуля и более инструкций. Блок отделяется парой фигурных скобок.
break- Прерывает текущую инструкцию цикла, ветвления или инструкцию с меткой и передаёт управление на инструкцию, следующую за прерываемой.
continue- Прерывает выполнение инструкции в текущей итерации текущего цикла или цикла с меткой и продолжает выполнение цикла со следующей итерации.
- Пустая инструкция
- Пустая инструкция используется тогда, когда никакой инструкции быть не должно, а по синтаксису JavaScript она требуется.
if...else- Выполняет инструкцию, если указанное условие является истинным. Если условие ложно, выполняет другую инструкцию.
switch- Вычисляет выражение, сопоставляет вычисленное значение с выражением выбора и выполняет инструкции, ассоциированные с этим выбором.
throw- Выбрасывает пользовательское исключение.
try...catch- Помечает блок инструкций и определяет реакцию на возникновение исключения внутри помеченного блока инструкций.
Объявления
var- Объявляет переменную, необязательно инициализирует её значением.
-
let - Объявляет локальную переменную в области видимости блока, необязательно инициализирует её значением.
-
const - Объявляет именованную константу только для чтения.
Функции
function- Объявляет функцию с указанными параметрами.
-
function* - Функции-генераторы, упрощающие написание итераторов.
return- Определяет значение, возвращаемое из функции.
-
yield - Смотрите статьи Что нового в JavaScript 1.7 и Итераторы и генераторы.
Итерации
do...while- Создаёт цикл, выполняющий указанную инструкцию до тех пор, пока проверяющее условие равно
false. Условие вычисляется после выполнения инструкции, так что указанная инструкция выполнится хотя бы один раз. for- Создаёт цикл, состоящий из трёх необязательных выражений, заключённых в круглые скобки и разделённым точками с запятой с последующей инструкцией, выполняющейся в цикле.
-
for each...in - Проходит указанной переменной по всем значениям свойств объекта. Выполняет инструкции для каждого уникального свойства.
for...in- В случайном порядке проходит по перечислимым свойствам объекта. Выполняет инструкции для каждого уникального свойства.
-
for...of - Проходит по итерируемым объектам (включающим в себя массивы, массивоподобные объекты и итераторы с генераторами), выполняя пользовательский хук с инструкциями, исполняющимися для значения каждого уникального свойства.
while- Создаёт цикл, выполняющий указанную инструкцию до тех пор, пока проверяющее условие равно
true. Условие вычисляется перед выполнением инструкции..
Прочее
debugger- Вызывает любую доступную функциональность отладки. Если функциональность отладки не доступна, эта инструкция ничего не делает.
-
export - Используется для экспорта подписанным скриптом свойств, функций и объектов в другие подписанные или неподписанные скрипты. Эта древняя функциональность Netscape была удалена и будет пересмотрена модулями ECMAScript 6.
-
import - Используется для импорта скриптом свойств, функций и объектов из подписанного скрипта, который предоставил эту информацию. Эта древняя функциональность Netscape была удалена и будет пересмотрена модулями ECMAScript 6.
label- Предоставляет инструкцию с идентификатором, на который вы можете сослаться с помощью инструкций
breakилиcontinue. -
with - Расширяет цепочку областей видимости инструкции.
Спецификации
| Спецификация | Статус | Комментарии |
|---|---|---|
| ECMAScript 1-е издание. | Стандарт | Изначальное определение. |
| ECMAScript 5.1 (ECMA-262) Определение 'Инструкции' в этой спецификации. |
Стандарт | |
| ECMAScript 6 (ECMA-262) Определение 'Язык ECMAScript: инструкции и объявления' в этой спецификации. |
Черновик | Новое в этой спецификации: function*, let, for...of, yield. |