Информация о книге

978-5-496-03037-3

Главная  » Научно-техническая литература » Информационные технологии. Компьютеры » Интернет, Интранет, компьютерные сети » Разработка для Интернет » ECMAScript 6 для разработчиков

Закас Н., ECMAScript 6 для разработчиков

Питер, 2017 г., 978-5-496-03037-3


Описание книги

Познакомьтесь с радикальными изменениями в языке JavaScript, которые произошли благодаря новому стандарту ECMAScript 6. Николас Закас - автор бестселлеров и эксперт-разработчик - создал самое полное руководство по новым типам объектов, синтаксису и...

Скачать, но не бесплатно эту книгу можно в интернет-магазинах

  Литрес - 849 руб.

Читать онлайн


Доступен для чтения фрагмент книги

Поделиться ссылкой на книгу



Содержание книги

Предисловие
Благодарности
Введение
История ECMAScript 6
О книге
Совместимость с браузерами и Node.js
Кому адресована книга
Обзор содержания
Используемые соглашения
От издательства
Глава 1. Блочные привязки
Объявление и местоположение переменных
Объявления на уровне блока
Объявления let
Повторное объявление недопустимо
Объявления const
Временная мертвая зона
Блочные привязки в циклах
Функции в циклах
Объявления let в циклах
Объявления const в циклах
Блочные привязки на глобальном уровне
Новые приемы, появившиеся с введением блочных
привязок
В заключение
Глава 2. Строки и регулярные выражения....
Улучшенная поддержка Юникода
Кодовые пункты UTF-16
Метод codePointAt()
Метод String.fromCodePointQ
Метод normalize()
Флаг и в регулярных выражениях
Другие изменения в поддержке строк
Методы идентификации подстрок
Метод repeatQ
Другие изменения в регулярных выражениях
Флаг у в регулярных выражениях
Создание копий регулярных выражений
Свойство flags
Литералы шаблонов
Основной синтаксис
Многострочный текст
Подстановка значений
Теги шаблонов
В заключение
Глава 3. Функции
Функции со значениями параметров по умолчанию
Имитация значений параметров по умолчанию в
ECMAScript 5
Значения параметров по умолчанию в ECMAScript 6
Как значения параметров по умолчанию влияют на
объект arguments
Выражения в параметрах по умолчанию
Временная мертвая зона для параметров по
умолчанию
Неименованные параметры
Неименованные параметры в ECMAScript 5
Остаточные параметры
Дополнительные возможности конструктора
Function
Оператор расширения
Свойство name
Выбор соответствующих имен
Специальные случаи свойства name
Двойственная природа функций
Как в ECMAScript 5 определить, каким способом
вызвана функция
Метасвойство new.target
Функции уровня блоков
Когда использовать функции уровня блока
Функции уровня блока в нестрогом режиме
Стрелочные функции
Синтаксис стрелочных функций
Создание выражений немедленно вызываемых
функций
Отсутствие привязки this
Стрелочные функции и массивы
Отсутствие привязки arguments
Идентификация стрелочных функций
Оптимизация хвостовых вызовов
Отличия хвостовых вызовов в ECMAScript 6
Как использовать оптимизацию хвостовых вызовов
В заключение
Глава 4. Расширенные возможности объектов
Категории объектов
Расширение синтаксиса литералов объектов
Сокращенный синтаксис инициализации свойств
Сокращенный синтаксис определения методов
Вычисляемые имена свойств
Новые методы
Метод Object.is()
Метод Object.assign()
Дубликаты свойств в литералах объектов
Порядок перечисления собственных свойств
Расширения в прототипах
Смена прототипа объекта
Простой доступ к прототипу с помощью ссылки
super
Формальное определение метода
В заключение
Глава 5. Деструктуризация для упрощения
доступа к данным
Какие выгоды дает деструктуризация?
Деструктуризация объектов
Присваивание с деструктуризацией
Значения по умолчанию
Присваивание локальным переменным с другими
именами
Деструктуризация вложенных объектов
Деструктуризация массивов
Присваивание с деструктуризацией
Значения по умолчанию
Деструктуризация вложенных массивов
Остаточные элементы
Смешанная деструктуризация
Деструктурированные параметры
Деструктурированные параметры являются
обязательными
Значения по умолчанию для деструктурированных
параметров
В заключение
Глава 6. Символы и символьные свойства
Создание символов
Использование символов
Совместное использование символов
Приведение типов для символов
Извлечение символьных свойств
Экспортирование внутренних операций в виде
стандартных символов
Метод Symbol.haslnstance
Свойство Symbol.isConcatSpreadable
Свойства Symbol.match, Symbol.replace,
Symbol.search и Symbol.split
Метод Symbol.toPrimitive
Свойство Symbol.toStringTag
Свойство Symbol.unscopables
В заключение
Глава 7. Множества и ассоциативные массивы
Множества и ассоциативные массивы в ECMAScript 5
Недостатки обходных решений
Множества в ECMAScript 6
Создание множеств и добавление элементов
Удаление элементов
Метод forEach() для множеств
Преобразование множества в массив
Классы-выражения
Простой класс-выражение
Именованные классы-выражения
Классы как сущности первого класса
Свойства с методами доступа
Вычисляемые имена членов
Методы-генераторы
Статические члены
Наследование в производных классах
Затенение методов класса
Унаследованные статические члены
Производные классы из выражений
Наследование встроенных объектов
Свойство Symbol.species
Использование new.target в конструкторах классов
В заключение
Глава 8. Итераторы и генераторы
Проблемы использования циклов
Что такое итераторы?
Что такое генераторы?
Выражения функций-генераторов
Методы-генераторы объектов
Итерируемые объекты и циклы for-of
Доступ к итератору по умолчанию
Создание итерируемых объектов
Встроенные итераторы
Итераторы коллекций
Итераторы строк
Итераторы NodeList
Оператор расширения и итерируемые объекты, не
являющиеся массивал
Дополнительные возможности итераторов
Передача аргументов в итераторы
Возбуждение ошибок внутри итераторов
Инструкции return в генераторах
Делегирование генераторов
Асинхронное выполнение заданий
Простой инструмент выполнения заданий
Выполнение заданий с данными
Инструмент асинхронного выполнения заданий
В заключение
Глава 9. Введение в классы JavaScript
Структуры в ECMAScript 5, подобные классам
Объявление класса
Объявление простого класса
В чем преимущества синтаксиса определения
классов?
Глава 10. Расширенные возможности массивов ,
Создание массивов
Метод Array.of()
Метод Array.from()
Новые методы всех массивов
Методы find() и findlndex()
Метод fill()
Метод copyWithin()
Типизированные массивы
Числовые типы данных
Буферы массивов
Управление буферами массивов с помощью
представлений.
Сходства типизированных и обычных массивов
Общие методы
Те же самые итераторы
Методы of() и from()
Различия типизированных и обычных массивов
Различия в поведении
Отсутствующие методы
Дополнительные методы
В заключение
Множества со слабыми ссылками
Ассоциативные массивы в ECMAScript 6
Методы ассоциативных массивов
Инициализация ассоциативных массивов
Метод forEach() ассоциативных массивов
Ассоциативные массивы со слабыми ссылками
В заключение
Глава 11. Объект Promise и асинхронное
программирование-
Основы асинхронного программирования
Модель событий
Обратные вызовы
Основы объектов Promise
Жизненный цикл объекта Promise
Создание неустановившихся объектов Promise
Создание установившихся объектов Promise
Ошибки исполнителя
Глобальная обработка отклоненных объектов
Promise
Обработка отказов eNode.js
Обработка отказов в браузерах
Составление цепочек из объектов Promise
Перехват ошибок
Возврат значений в цепочке объектов Promise
Возврат объектов Promise в цепочке
Обработка сразу нескольких объектов Promise
Метод Promise.all()
Метод Promise.race()
Наследование Promise
Выполнение асинхронных заданий с помощью
Promise
В заключение
Глава 12. Прокси-объекты и Reflection API
Проблема с массивами
Введение в прокси-объекты и Reflection API
Создание простого прокси-объекта
Проверка свойств с помощью ловушки set
Проверка формы объектов с помощью ловушки get
Сокрытие свойств с помощью ловушки has
Предотвращение удаления свойств с помощью
ловушки delete Property.
Ловушки операций с прототипом
Как действуют ловушки операций с прототипом
Почему поддерживается два набора методов?
Ловушки, связанные с расширяемостью объектов
Два простых примера
Дубликаты методов управления расширяемостью
Ловушки операций с дескрипторами свойств
Блокирование вызова Object.defineProperty()
Ограничения объекта дескриптора
Дубликаты методов для операций с дескрипторами
Ловушка own Keys
Обработка вызовов функций с помощью ловушек
apply и construct
Проверка параметров функции
Вызов конструкторов без ключевого слова new
Переопределение конструкторов абстрактных
базовых классов.
Вызываемые конструкторы классов
Отключение прокси-объектов
Решение проблемы с массивами
Определение индексов массива
Увеличение значения length при добавлении новых
элементов...
Удаление элементов при уменьшении значения
length
Реализация класса My Array
Использование прокси-объекта в качестве
прототипа
Использование ловушки get в прототипе
Использование ловушки set в прототипе
Использование ловушки has в прототипе
Прокси-объекты как прототипы классов
В заключение
Глава 13. Инкапсуляция кода в модули
Что такое модули?
Основы экспортирования
Основы импортирования
Импортирование единственной привязки
Импортирование нескольких привязок
Импортирование всего модуля
Тонкая особенность импортированных привязок
Переименование экспортируемых и импортируемых
привязок
Значения по умолчанию в модулях
Экспортирование значений по умолчанию
Импортирование значений по умолчанию
Реэкспорт привязки
Импортирование без привязок
Загрузка модулей
Использование модулей в веб-браузерах
Разрешение спецификаторов модулей в браузерах
В заключение
Приложение А. Мелкие изменения в ECMAScript 6..
Новые приемы работы с целыми числами
Идентификация целых чисел
Безопасные целые числа
Новые математические методы
Идентификаторы с символами Юникода
Формализованное свойство proto
Приложение Б. Введение в ECMAScript 7 (2016)
Оператор возведения в степень
Порядок операций
Ограничения операндов
Метод Array.prototype.includcs()
Как используется метод Array.prototype.includes()
Сравнение значений
Изменение области видимости функций в строгом
режиме


Об авторе


Последние поступления в рубрике "Разработка для Интернет"



Легкий способ выучить Python 3 еще глубже Легкий способ выучить Python 3 еще глубже Шоу З.

Воплотите ваши идеи в код самого высокого качества! Зед Шоу – один из тех, кто по-настоящему разбирается в Python. Его советы помогли миллионам программистов по всему миру, помогут они и вам. От вас потребуется лишь дисциплина, желание и упорство, все......

Разработка веб-приложений с помощью Node.js, MongoDB и Angular. Исчерпывающее руководство по использованию стека MEAN Разработка веб-приложений с помощью Node.js, MongoDB и Angular. Исчерпывающее руководство по использованию стека MEAN Дейли Б.

Node.js является главной средой для программирования на стороне сервера, MongoDB — самой распространенной базой данных типа NoSQL и Angular— ведущим каркасом для разработки веб-приложений на стороне клиента по шаблону MVC. Совместно они образуют легко......

Программирование GPU при помощи Python и CUDA Программирование GPU при помощи Python и CUDA Тоуманнен Б.

Книга предлагает быстрое погружение в программирование GPU. Вы узнаете, как применять закон Амдала, использовать профилировщик для определения узких мест в коде на Python, настроить окружения для программирования GPU. По мере чтения вы будете......

Если Вы задавались вопросами "где найти книгу в интернете?", "где купить книгу?" и "в каком книжном интернет-магазине нужная книга стоит дешевле?", то наш сайт именно для Вас. На сайте книжной поисковой системы Книгопоиск Вы можете узнать наличие книги Закас Н., ECMAScript 6 для разработчиков в интернет-магазинах. Также Вы можете перейти на страницу понравившегося интернет-магазина и купить книгу на сайте магазина. Учтите, что стоимость товара и его наличие в нашей поисковой системе и на сайте интернет-магазина книг может отличаться, в виду задержки обновления информации.