Дэвид Флэнаган - JavaScript. Подробное руководство, 6-е издание

Тут можно читать онлайн Дэвид Флэнаган - JavaScript. Подробное руководство, 6-е издание - бесплатно ознакомительный отрывок. Жанр: comp-db, издательство Символ-Плюс, год 2012. Здесь Вы можете читать ознакомительный отрывок из книги онлайн без регистрации и SMS на сайте лучшей интернет библиотеки ЛибКинг или прочесть краткое содержание (суть), предисловие и аннотацию. Так же сможете купить и скачать торрент в электронном формате fb2, найти и слушать аудиокнигу на русском языке или узнать сколько частей в серии и всего страниц в публикации. Читателям доступно смотреть обложку, картинки, описание и отзывы (комментарии) о произведении.
  • Название:
    JavaScript. Подробное руководство, 6-е издание
  • Автор:
  • Жанр:
  • Издательство:
    Символ-Плюс
  • Год:
    2012
  • Город:
    СПб
  • ISBN:
    978-5-93286-215-5
  • Рейтинг:
    2.5/5. Голосов: 21
  • Избранное:
    Добавить в избранное
  • Отзывы:
  • Ваша оценка:
    • 60
    • 1
    • 2
    • 3
    • 4
    • 5

Дэвид Флэнаган - JavaScript. Подробное руководство, 6-е издание краткое содержание

JavaScript. Подробное руководство, 6-е издание - описание и краткое содержание, автор Дэвид Флэнаган, читайте бесплатно онлайн на сайте электронной библиотеки LibKing.Ru
C момента выхода первого издания в 1996 году книга "JavaScript: Подробное руководство" превратилась в библию программистов на JavaScript. За эти годы было издано более 500000 экземпляров, и веб-разработчики по-прежнему с восторгом отзываются о ней.
Эта книга - одновременно и руководство программиста, и полноценный справочник по базовому языку JavaScript и клиентским прикладным интерфейсам, предоставляемым веб-броузерами.

JavaScript. Подробное руководство, 6-е издание - читать онлайн бесплатно ознакомительный отрывок

JavaScript. Подробное руководство, 6-е издание - читать книгу онлайн бесплатно (ознакомительный отрывок), автор Дэвид Флэнаган
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Инструкция switch предназначена именно для таких ситуаций. За ключевым словом switch следует выражение в скобках и блок кода в фигурных скобках:

switch(выражение) {

инструкции

}

Однако полный синтаксис инструкции switch более сложен, чем показано здесь. Различные места в блоке помечены ключевым словом case , за которым следует выражение и символ двоеточия. Ключевое слово case напоминает инструкцию с меткой за исключением того, что оно связывает инструкцию с выражением , а не с именем. Когда выполняется инструкция switch , она вычисляет значение выражения, а затем ищет метку case , соответствующую этому значению (соответствие определяется с помощью оператора идентичности === ). Если метка найдена, выполняется блок кода, начиная с первой инструкции, следующей за меткой case . Если метка case с соответствующим значением не найдена, выполнение начинается с первой инструкции, следующей за специальной меткой default: . Если метка default: отсутствует, блок инструкции switch пропускается целиком.

Работу инструкции switch сложно объяснить на словах, гораздо понятнее выглядит объяснение на примере. Следующая инструкция switch эквивалентна повторяющимся инструкциям if/else , показанным в предыдущем разделе:

switch(n) {

case 1: // Выполняется, если п === 1

// Выполнить блок 1.

break; // Здесь остановиться

case 2: // Выполняется, если п === 2

// Выполнить блок 2.

break; // Здесь остановиться

case 3: // Выполняется, если п === 3

// Выполнить блок 3.

break; // Здесь остановиться

default: // Если все остальное не подходит...

// Выполнить блок 4.

break; // Здесь остановиться

}

Обратите внимание на ключевое слово break в конце каждого блока case . Инструкция break , описываемая далее в этой главе, приводит к передаче управления в конец инструкции switch и продолжению выполнения инструкций, следующих далее. Конструкции case в инструкции switch задают только начальную точку выполняемого программного кода, но не задают никаких конечных точек. В случае отсутствия инструкций break инструкция switch начнет выполнение блока кода с меткой case , соответствующей значению выражения, и продолжит выполнение инструкций до тех пор, пока не дойдет до конца блока. В редких случаях это полезно для написания программного кода, который переходит от одной метки case к следующей, но в 99% случаев следует аккуратно завершать каждый блок case инструкцией break . (При использовании switch внутри функции вместо break можно использовать инструкцию return . Обе эти инструкции служат для завершения работы инструкции switch и предотвращения перехода к следующей метке case.)

Ниже приводится более практичный пример использования инструкции switch ; он преобразует значение в строку способом, зависящим от типа значения:

// Преобразовать число в шестнадцатеричное целое

// Вернуть строку, заключенную в кавычки

// Любой другой тип преобразуется обычным способом

function convert(x) {

switch(typeof х) {

case ’number':

return x.toString(16);

case 'string':

return "" + x + "";

default:

return x.toStringO

}

}

Обратите внимание, что в двух предыдущих примерах за ключевыми словами case следовали числа или строковые литералы. Именно так инструкция switch чаще всего используется на практике, но стандарт ECMAScript позволяет указывать после case произвольные выражения.

Инструкция switch сначала вычисляет выражение после ключевого слова switch , а затем выражения case в том порядке, в котором они указаны, пока не будет найдено совпадающее значение. [4] Тот факт, что выражения в метках case вычисляются во время выполнения программы, существенно отличает инструкцию switch в языке JavaScript (и делает ее менее эффективной) от инструкции switch в С, C++ и Java. В этих языках выражения case должны быть константами, вычисляемыми на этапе компиляции, и иметь один тот же тип. Кроме того, инструкция switch в этих языках часто может быть реализована с использованием высокоэффективной таблицы переходов. Факт совпадения определяется с помощью оператора идентичности === , а не с помощью оператора равенства == , поэтому выражения должны совпадать без какого-либо преобразования типов.

Поскольку при каждом выполнении инструкции switch вычисляются не все выражения case , следует избегать использования выражений case , имеющих побочные эффекты, такие как вызовы функций и присваивания. Безопаснее всего ограничиваться в выражениях case константными выражениями.

Как объяснялось ранее, если ни одно из выражений case не соответствует выражению switch , инструкция switch начинает выполнение с инструкции с меткой default: . Если метка default: отсутствует, тело инструкции switch полностью пропускается. Обратите внимание, что в предыдущих примерах метка default: указана в конце тела инструкции switch после всех меток case . Это логичное и обычное место для нее, но на самом деле она может располагаться в любом месте внутри инструкции switch .

5.5. Циклы

Чтобы понять действие условных инструкций, мы предлагали представить их в виде разветвлений на дороге, по которой двигается интерпретатор JavaScript. Инструкции циклов можно представить как разворот на дороге, возвращающий обратно, который заставляет интерпретатор многократно проходить через один и тот же участок программного кода. В языке JavaScript имеется четыре инструкции циклов: while, do/while, for и for/in . Каждому из них посвящен один из следующих подразделов. Одно из обычных применений инструкций циклов - обход элементов массива. Эта разновидность циклов подробно обсуждается в разделе 7.6, где также рассматриваются специальные методы итераций класса Array .

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать


Дэвид Флэнаган читать все книги автора по порядку

Дэвид Флэнаган - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки LibKing.




JavaScript. Подробное руководство, 6-е издание отзывы


Отзывы читателей о книге JavaScript. Подробное руководство, 6-е издание, автор: Дэвид Флэнаган. Читайте комментарии и мнения людей о произведении.


Понравилась книга? Поделитесь впечатлениями - оставьте Ваш отзыв или расскажите друзьям

Напишите свой комментарий
x