What do you think?


O'Reilly Pocket Reference
JavaScript: The Definitive Guide
This Fifth Edition is completely revised and expanded to cover JavaScript as it is used in today's Web 2.0 applications. This book is both an example-driven programmer's guide and a keep-on-your-desk reference, with new chapters that explain everything you need to know to get the most out of JavaScript, including:
Part I explains the core JavaScript language in detail. If you are new to JavaScript, it will teach you the language. If you are already a JavaScript programmer, Part I will sharpen your skills and deepen your understanding of the language.
Part II explains the scripting environment provided by web browsers, with a focus on DOM scripting with unobtrusive JavaScript. The broad and deep coverage of client-side JavaScript is illustrated with many sophisticated examples that demonstrate how to:
Part III is a complete reference for core JavaScript. It documents every class, object, constructor, method, function, property, and constant defined by JavaScript 1.5 and ECMAScript Version 3.
Part IV is a reference for client-side JavaScript, covering legacy web browser APIs, the standard Level 2 DOM API, and emerging standards such as the XMLHttpRequest object and the canvas tag.
More than 300,000 JavaScript programmers around the world have madethis their indispensable reference book for building JavaScript applications.
"A must-have reference for expert JavaScript programmers...well-organized and detailed."
-- Brendan Eich, creator of JavaScript
Part I explains the core JavaScript language in detail. If you are new to JavaScript, it will teach you the language. If you are already a JavaScript programmer, Part I will sharpen your skills and deepen your understanding of the language.
Part II explains the scripting environment provided by web browsers, with a focus on DOM scripting with unobtrusive JavaScript. The broad and deep coverage of client-side JavaScript is illustrated with many sophisticated examples that demonstrate how to:
Part III is a complete reference for core JavaScript. It documents every class, object, constructor, method, function, property, and constant defined by JavaScript 1.5 and ECMAScript Version 3.
Part IV is a reference for client-side JavaScript, covering legacy web browser APIs, the standard Level 2 DOM API, and emerging standards such as the XMLHttpRequest object and the canvas tag.
More than 300,000 JavaScript programmers around the world have madethis their indispensable reference book for building JavaScript applications.
"A must-have reference for expert JavaScript programmers...well-organized and detailed."
-- Brendan Eich, creator of JavaScript
994 pages, Paperback
First published January 1, 1996
About the author
David Flanagan
36 books33 followersDavid Flanagan is a computer programmer who has spent much of the last 20 years writing books about programming languages. He now works at Mozilla. David lives with his wife and children in the Pacific Northwest, between the cities of Seattle and Vancouver.
Ratings & Reviews
Friends & Following
Create a free account to discover what your friends think of this book!
Community Reviews
Displaying 1 - 3 of 3 reviews
December 5, 2025
Читай БЫСТРЕЕ с лучшим пониманием (promo)
Заметки из книги:
“Функция - это именованный и параметризованный блок кода JavaScript, который вы определяете один раз и затем можете вызывать снова и снова.”
“В ES6 и последующих версиях имеется сокращенный синтаксис для определения функций. В этом кратком синтаксисе для отделения списка аргументов от тела функции используется =>, а потому функции, определенные подобным образом, известны как стрелочные функции (arrow function). Стрелочные функции чаще всего применяются, когда нужно передать неименованную функцию в качестве аргумента другой функции.”
“Когда мы применяем функции с объектами, то получаем методы… (Когда функции присваиваются свойствам объекта мы называем их “методами”)”
“Литерал — это значение данных, находящееся прямо в программе…”
“Идентификатор - это просто имя. Идентификаторы в JavaScript применяются для именования констант, переменных, свойств, функций и классов, а также для того, чтобы снабдить метками некоторые циклы в коде JavaScript.”
“Типы JavaScript можно разделить на две категории: элементарные типы и объектные типы. Элементарные типы JavaScript включают числа, строки текста (называемые просто строками) и булевские истинностные значения (называе-мые просто булевскими).”
“Специальные величины null и undefined в JavaScript относятся к элементарным значениям, но не являются числами, строками или булевскими значе-ниями.”
“В ES6 добавлен новый специализированный тип, известный как символ (Symbol), который делает возможным определение языковых расширений, не причиняя вреда обратной совместимости.”
“Любое значение JavaScript, которое отличается от числа, строки, булевского значения, символа, null или undefined, представляет собой объект. Объект (т.е. член типа Object) - это коллекция свойств, где каждое свойство имеет имя и значение (либо элементарное значение, либо другой объект).”
“Основной числовой тип JavaScript, Number, служит для представления целых чисел и аппроксимации вещественных чисел.”
“В ES2016 добавляется ** для возведения в степень.”
“Если такие аппроксимации с плавающей точкой проблематичны для ваших программ, тогда обдумайте применение масштабированных целых чисел. Например, вы можете манипулировать денежными величинами как целочисленными центами, а не дробными долларами.”
“B JavaScript определен простой класс Date для представления и манипулиро-вания числами, которые представляют дату и время. Экземпляры класса Date являются объектами, но они также имеют числовое представление в виде отметок времени, которые указывают количество миллисекунд, прошедших со дня 1 января 1970 года”
“В качестве типа JavaScript для представления текста применяется строка. Строка — это неизменяемая упорядоченная последовательность 16-битных значений, каждое из которых обычно представляет символ Unicode. Длиной строки является количество содержащихся в ней 16-битных значений. Строки (и массивы) в JavaScript используют индексацию, начинающуюся с нуля: первое 16-битное значение находится в позиции 0, второе — в позиции 1 и т.д. Пустая строка — это строка с длиной 0.”
“в ЕSб строки являются итерируемыми, и применение цикла for/of или операции . . . со строкой приведет к проходу по действительным символам строки, а не по 16-битным значениям.”
“Чтобы включить строку в программу JavaScript, просто поместите символы строки внутрь совпадающей пары одинарных, двойных или обратных кавычек (', " или `).”
“Одним из встроенных средств JavaScript является возможность конкатенации строк. Если операция + применяется с цифрами, то она складывает их.”
“Строки можно сравнивать с помощью стандартных операции равенства === и неравенства !==: две строки равны, если и только если они содержат в точности одну и ту же последовательность 16-битных значений. Строки также можно сравнивать с применением операций <, <=, › и >=.”
Заметки из книги:
“Функция - это именованный и параметризованный блок кода JavaScript, который вы определяете один раз и затем можете вызывать снова и снова.”
“В ES6 и последующих версиях имеется сокращенный синтаксис для определения функций. В этом кратком синтаксисе для отделения списка аргументов от тела функции используется =>, а потому функции, определенные подобным образом, известны как стрелочные функции (arrow function). Стрелочные функции чаще всего применяются, когда нужно передать неименованную функцию в качестве аргумента другой функции.”
“Когда мы применяем функции с объектами, то получаем методы… (Когда функции присваиваются свойствам объекта мы называем их “методами”)”
“Литерал — это значение данных, находящееся прямо в программе…”
“Идентификатор - это просто имя. Идентификаторы в JavaScript применяются для именования констант, переменных, свойств, функций и классов, а также для того, чтобы снабдить метками некоторые циклы в коде JavaScript.”
“Типы JavaScript можно разделить на две категории: элементарные типы и объектные типы. Элементарные типы JavaScript включают числа, строки текста (называемые просто строками) и булевские истинностные значения (называе-мые просто булевскими).”
“Специальные величины null и undefined в JavaScript относятся к элементарным значениям, но не являются числами, строками или булевскими значе-ниями.”
“В ES6 добавлен новый специализированный тип, известный как символ (Symbol), который делает возможным определение языковых расширений, не причиняя вреда обратной совместимости.”
“Любое значение JavaScript, которое отличается от числа, строки, булевского значения, символа, null или undefined, представляет собой объект. Объект (т.е. член типа Object) - это коллекция свойств, где каждое свойство имеет имя и значение (либо элементарное значение, либо другой объект).”
“Основной числовой тип JavaScript, Number, служит для представления целых чисел и аппроксимации вещественных чисел.”
“В ES2016 добавляется ** для возведения в степень.”
“Если такие аппроксимации с плавающей точкой проблематичны для ваших программ, тогда обдумайте применение масштабированных целых чисел. Например, вы можете манипулировать денежными величинами как целочисленными центами, а не дробными долларами.”
“B JavaScript определен простой класс Date для представления и манипулиро-вания числами, которые представляют дату и время. Экземпляры класса Date являются объектами, но они также имеют числовое представление в виде отметок времени, которые указывают количество миллисекунд, прошедших со дня 1 января 1970 года”
“В качестве типа JavaScript для представления текста применяется строка. Строка — это неизменяемая упорядоченная последовательность 16-битных значений, каждое из которых обычно представляет символ Unicode. Длиной строки является количество содержащихся в ней 16-битных значений. Строки (и массивы) в JavaScript используют индексацию, начинающуюся с нуля: первое 16-битное значение находится в позиции 0, второе — в позиции 1 и т.д. Пустая строка — это строка с длиной 0.”
“в ЕSб строки являются итерируемыми, и применение цикла for/of или операции . . . со строкой приведет к проходу по действительным символам строки, а не по 16-битным значениям.”
“Чтобы включить строку в программу JavaScript, просто поместите символы строки внутрь совпадающей пары одинарных, двойных или обратных кавычек (', " или `).”
“Одним из встроенных средств JavaScript является возможность конкатенации строк. Если операция + применяется с цифрами, то она складывает их.”
“Строки можно сравнивать с помощью стандартных операции равенства === и неравенства !==: две строки равны, если и только если они содержат в точности одну и ту же последовательность 16-битных значений. Строки также можно сравнивать с применением операций <, <=, › и >=.”
August 5, 2025
Книга хороша и обстоятельна. Отлично подойдет тем, кто начинает учить Javascript, но уже знаком с каким-либо иным языком программирования. Единственное, что мне не понравилось - это чересчур сложные примеры в главах о браузерной части и ноде.
September 6, 2022
Некоторые темы зацепили глаза надолго, правда почему-то на середине книге формат сменился в нечитабельный
и так сойдёт
и так сойдёт
Displaying 1 - 3 of 3 reviews




