Lea.javascript.ru, 2015. — 634 с.
Содержание:
Введение
Введение в JavaScript
Справочники и спецификации
Редакторы для кода
Консоль разработчика
Основы JavaScript
Привет, мир!
Внешние скрипты, порядок исполнения
Структура кода
Современный стандарт, «use strict»
Переменные
Правильный выбор имени переменной
Шесть типов данных, typeof
Основные операторы
Операторы сравнения и логические значения
Побитовые операторы
Взаимодействие с пользователем: alert, prompt, confirm
Условные операторы: if, '?'
Логические операторы
Преобразование типов для примитивов
Циклы while, for
Конструкция switch
Функции
Функциональные выражения
Рекурсия, стек
Именованные функциональные выражения
Всё вместе: особенности JavaScript
Качество кода
Отладка в браузере Chrome
Советы по стилю кода
Как писать неподдерживаемый код?
Автоматические тесты при помощи chai и mocha
Структуры данных
Введение в методы и свойства
Числа
Строки
Объекты как ассоциативные массивы
Объекты: перебор свойств
Объекты: передача по ссылке
Массивы c числовыми индексами
Массивы: методы
Массив: перебирающие методы
Псевдомассив аргументов «arguments»
Дата и Время
Замыкания, область видимости
Глобальный объект
Замыкания, функции изнутри
[[Scope]] для new Function
Локальные переменные для объекта
Модули через замыкания
Управление памятью в JavaScript
Устаревшая конструкция «with»
Методы объектов и контекст вызова
Методы объектов, this
Преобразование объектов: toString и valueOf
Создание объектов через «new»
Дескрипторы, геттеры и сеттеры свойств
Статические и фабричные методы
Явное указание this: «call», «apply»
Привязка контекста и карринг: «bind»
Функции-обёртки, декораторы
Некоторые другие возможности
Типы данных: [[Class]], instanceof и утки
Формат JSON, метод toJSON
setTimeout и setInterval
Запуск кода из строки: eval
Перехват ошибок, «try..catch»
ООП в функциональном стиле
Введение
Внутренний и внешний интерфейс
Геттеры и сеттеры
Функциональное наследование
ООП в прототипном стиле
Прототип объекта
Свойство F.prototype и создание объектов через new
Встроенные «классы» в JavaScript
Свои классы на прототипах
Наследование классов в JavaScript
Проверка класса: «instanceof»
Свои ошибки, наследование от Error
Примеси
Введение
Введение в JavaScript
Справочники и спецификации
Редакторы для кода
Консоль разработчика
Основы JavaScript
Привет, мир!
Внешние скрипты, порядок исполнения
Структура кода
Современный стандарт, «use strict»
Переменные
Правильный выбор имени переменной
Шесть типов данных, typeof
Основные операторы
Операторы сравнения и логические значения
Побитовые операторы
Взаимодействие с пользователем: alert, prompt, confirm
Условные операторы: if, '?'
Логические операторы
Преобразование типов для примитивов
Циклы while, for
Конструкция switch
Функции
Функциональные выражения
Рекурсия, стек
Именованные функциональные выражения
Всё вместе: особенности JavaScript
Качество кода
Отладка в браузере Chrome
Советы по стилю кода
Как писать неподдерживаемый код?
Автоматические тесты при помощи chai и mocha
Структуры данных
Введение в методы и свойства
Числа
Строки
Объекты как ассоциативные массивы
Объекты: перебор свойств
Объекты: передача по ссылке
Массивы c числовыми индексами
Массивы: методы
Массив: перебирающие методы
Псевдомассив аргументов «arguments»
Дата и Время
Замыкания, область видимости
Глобальный объект
Замыкания, функции изнутри
[[Scope]] для new Function
Локальные переменные для объекта
Модули через замыкания
Управление памятью в JavaScript
Устаревшая конструкция «with»
Методы объектов и контекст вызова
Методы объектов, this
Преобразование объектов: toString и valueOf
Создание объектов через «new»
Дескрипторы, геттеры и сеттеры свойств
Статические и фабричные методы
Явное указание this: «call», «apply»
Привязка контекста и карринг: «bind»
Функции-обёртки, декораторы
Некоторые другие возможности
Типы данных: [[Class]], instanceof и утки
Формат JSON, метод toJSON
setTimeout и setInterval
Запуск кода из строки: eval
Перехват ошибок, «try..catch»
ООП в функциональном стиле
Введение
Внутренний и внешний интерфейс
Геттеры и сеттеры
Функциональное наследование
ООП в прототипном стиле
Прототип объекта
Свойство F.prototype и создание объектов через new
Встроенные «классы» в JavaScript
Свои классы на прототипах
Наследование классов в JavaScript
Проверка класса: «instanceof»
Свои ошибки, наследование от Error
Примеси