Как устроен JavaScript (epub)
- Как устроен JavaScript 4426K (скачать epub) - Дуглас Крокфорд


Переводчик Н. Вильчинский
Технический редактор Н. Рощина
Литературный редактор Н. Рощина
Художник С. Заматевская
Корректоры Н. Гринчик, Е. Павлович, Е. Павлович
Верстка Г. Блинов
Дуглас Крокфорд
Как устроен JavaScript. — СПб.: Питер, 2019.
ISBN 978-5-4461-1260-9
© ООО Издательство "Питер", 2019
Все права защищены. Никакая часть данной книги не может быть воспроизведена в какой бы то ни было форме без письменного разрешения владельцев авторских прав.
Список глав
Капли дождя на розах и усы у котят.
Не Мария Августа фон Трапп (Maria Augusta von Trapp). Не «Звуки музыки»
[
{"number": 0, "chapter": "Сначала прочитайте меня!"},
{"number": 1, "chapter": "Как работают имена"},
{"number": 2, "chapter": "Как работают числа"},
{"number": 3, "chapter": "Как работают большие целые числа"},
{"number": 4, "chapter": "Как работают большие числа с плавающей точкой"},
{"number": 5, "chapter": "Как работают большие рациональные числа"},
{"number": 6, "chapter": "Как работают булевы значения"},
{"number": 7, "chapter": "Как работают массивы"},
{"number": 8, "chapter": "Как работают объекты"},
{"number": 9, "chapter": "Как работают строки"},
{"number": 10, "chapter": "Как работают ничтожно малые значения"},
{"number": 11, "chapter": "Как работают инструкции"},
{"number": 12, "chapter": "Как работают функции"},
{"number": 13, "chapter": "Как работают генераторы"},
{"number": 14, "chapter": "Как работают исключения"},
{"number": 15, "chapter": "Как работают программы"},
{"number": 16, "chapter": "Как работает this"},
{"number": 17, "chapter": "Как работает код без классов"},
{"number": 18, "chapter": "Как работают концевые вызовы"},
{"number": 19, "chapter": "Как работает чистота"},
{"number": 20, "chapter": "Как работает событийное программирование"},
{"number": 21, "chapter": "Как работает Date"},
{"number": 22, "chapter": "Как работает JSON"},
{"number": 23, "chapter": "Как работает тестирование"},
{"number": 24, "chapter": "Как работает оптимизация"},
{"number": 25, "chapter": "Как работает транспиляция"},
{"number": 26, "chapter": "Как работает разбиение на лексемы"},
{"number": 27, "chapter": "Как работает парсер"},
{"number": 28, "chapter": "Как работает генерация кода"},
{"number": 29, "chapter": "Как работает среда выполнения"},
{"number": 30, "chapter": "Как работают нелепости, или Что такое Wat!"},
{"number": 31, "chapter": "Как устроена эта книга"}
]
Глава 0. Сначала прочитайте меня!
Некоторые образы кажутся таинственными и не оставляют никаких сомнений в том, что являются результатом последовательности случайных событий, как будто созданы пресловутой обезьяной за пишущей машинкой.
Джордж Марсалья (George Marsaglia)
Особой красотой JavaScript не блещет, но он работает.
Эта книга написана для людей, имеющих определенный опыт работы с JavaScript и желающих приобрести более четкое и глубокое понимание того, как этот язык работает и как добиться от него наибольшей отдачи. Она также подойдет опытным программистам, желающим освоить еще один язык.
Издание не для начинающих. Надеюсь, что когда-нибудь напишу книгу и для них. Но эта им не подойдет. Ее не назовешь легким чтивом. Беглый просмотр вам ничего не даст.
Здесь не рассматриваются механизмы обработки кода JavaScript или виртуальные машины. Книга — о самом языке и о том, что должен знать каждый программист. В ней я попробую сделать радикальную переоценку JavaScript, того, как он работает, как его можно усовершенствовать и как лучше использовать. Речь идет о том, как думать о JavaScript и как думать в JavaScript. Я планирую притвориться, что текущая версия языка — единственная, и не собираюсь тратить ваше время на демонстрацию того, как все работает в ES1, ES3 или ES5. Это не имеет никакого значения. Основное внимание будет уделено тому, как JavaScript работает для нас именно сейчас.
Эта книга не исчерпывающее руководство. В ней без какого-либо специального упоминания будут проигнорированы довольно большие и сложные части языка. Если не упомянута ваша самая любимая функция, то это, скорее всего, потому, что она не представляет ни малейшей ценности. Синтаксис также не будет удостоен особого внимания. Предполагается, что вы уже знаете, как написать инструкцию if. Если же вам такие тонкости неизвестны, обратитесь к информационному ресурсу JSLint по адресу jslint.com.
Некоторым весьма полезным составляющим языка, например большинству методов в базовых прототипах, также будет отведено не слишком много времени. Для их изучения есть отличные справочные материалы в Интернете. Мой любимый ресурс — Mozilla Foundation — находится по адресу developer.mozilla.org/en-US/docs/Web/JavaScript/Reference.
Важная цель при разработке языка программирования — сделать так, чтобы он был понятен, логичен и хорошо сформулирован, не приводил к возникновению странных тупиковых ситуаций. Но JavaScript даже близко не подвели к достижению этой цели. С каждым выпуском языка его странности растут как снежный ком, неизменно усугубляя ситуацию. В нем появляется множество тупиковых и критических проблем. В книге рассматриваются только некоторые из этих странностей, просто чтобы показать наличие подобных безобразий. Держитесь подальше от всего, что приводит к таким тупиковым и крайним ситуациям. Не углубляйтесь в этот мрак. Оставайтесь в той части языка, где все просто и понятно. Там есть все, что вам нужно для написания хороших программ.
Комментарии к книге «Как устроен JavaScript», Дуглас Крокфорд
Всего 0 комментариев