Page 96 - Браун Э. - Изучаем JavaScript. Руководство по созданию современных веб-сайтов - 2017
P. 96
Объединив операторы i f . . . l s e таким способом, мы создали выбор одного
e
пути из трех вместо двух. Внимательный читатель мог бы заметить, что технически
мы отклонились от установленного правила (не смешивать одиночные операторы
и блоки операторов), но это исключение из правила: таков общепринятый шаблон
и он не затрудняет чтения. Мы могли бы переписать эти блоки операторов так.
if ( n ew Date ( } . g etDay ( ) === 3 ) {
totalBet = 1 ;
else {
i f ( f unds 7 )
totalBet = funds ;
else {
console . l og ( "Здecь нет никаких суеверий ! " ) ;
Мы сделали свой код более правильным, объемным и подробным, но ясности не
получили.
Метаси нтаксис
Т е рмин метасинтаксис (metasyntax) означает синтаксис, описывающий еще один
синтаксис. Обладающие подготовкой в информатике сразу вспомнят о расширенной
форме Бэкуса-Наура (Extended Backus-Naur Form - EBNF) - простой концепции
с невероятно пугающим названием.
В остальной части этой главы я буду использовать метасинтаксис для краткого
описания синтаксиса управления потоком JavaScript. Используемый мной метасинтак
сис прост, неформален и, что важнее всего, применяется для документации JavaScript
в сети Mozilla Developer Network (MDN). Поскольку MDN - это ресурс, который вы,
несомненно, будете использовать очень часто, знакомство с ним будет полезным.
В этом метасинтаксисе есть только два реальных элемента: нечто, окруженное
квадратными скобками, является необязательным, а многоточие (технически - тро
еточие) означает "здесь есть что-то еще". Слова используются как знакоместа, а их
значение ясно из контекста. Например, опера торl и опера тор2 представляют два
разных оператора, выражение - это нечто, возвращающее значение, а условие под
разумевает выражение, возвращающее истину или ложь.
Помните, что блок операторов - это оператор"., поэтому везде, где
можно использовать оператор, можно использовать и блок операторов.
Поскольку мы уже знакомы с некоторыми операторами управления потоком, да
вайте рассмотрим их метасинтаксис.
Операторы управления потоком в JavaScript 95

