Знакомство с ES6. Урок 18

Содержание

Слайд 2

2009 -2015

ECMA-262 5th Edition в декабре 2009
ECMA-262 5.1 Edition в июне 2011
ECMA-262

2009 -2015 ECMA-262 5th Edition в декабре 2009 ECMA-262 5.1 Edition в
6th Edition в июне 2015

Слайд 4

Блочная область видимости (let и const)

Оператор let
Позволяет объявить локальную переменную с

Блочная область видимости (let и const) Оператор let Позволяет объявить локальную переменную
областью видимости, ограниченной текущим блоком кода

Слайд 5

Блочная область видимости

Блочная область видимости

Слайд 6

Блочная область видимости

Блочная область видимости

Слайд 7

Блочная область видимости

Блочная область видимости

Слайд 8

Блочная область видимости

Оператор const
Значение констант не может быть изменено новым присваиванием

Блочная область видимости Оператор const Значение констант не может быть изменено новым
и не может быть переопределено. Константы подчиняются области видимости уровня блока

Слайд 9

Блочная область видимости

Блочная область видимости

Слайд 10

Деструктуризация

Деструктуризация- особый синтаксис присваивания, при котором можно присвоить массив или объект сразу

Деструктуризация Деструктуризация- особый синтаксис присваивания, при котором можно присвоить массив или объект
нескольким переменным, разбив его на части
Деструктуризация позволяет привязывать данные при совпадении паттерна
Поддерживается для массивов и объектов
Деструктуризация устойчива к ошибкам и во многом похожа на поиск поля в объекте
Возвращает undefined, если что-то пошло не так

Слайд 11

Деструктуризация массива

Деструктуризация массива

Слайд 12

Деструктуризация массива

Деструктуризация массива

Слайд 13

Деструктуризация

Оператор spread
Значением rest будет массив из оставшихся элементов
Вместо rest можно

Деструктуризация Оператор spread Значением rest будет массив из оставшихся элементов Вместо rest
использовать другое имя переменной
Оператор spread - троеточие
Spread должен стоять только перед последним элементом

Слайд 14

Деструктуризация массива

Деструктуризация массива

Слайд 15

Значения по умолчанию

Значения по умолчанию

Слайд 16

Отделение объявления от присваивания

Отделение объявления от присваивания

Слайд 18

Использование возвращающей функции

Использование возвращающей функции

Слайд 19

Работа c другими коллекциями

Работа c другими коллекциями

Слайд 20

Деструктуризация объектов

Указываем, какие свойства в какие переменные должны перейти
Объект справа

Деструктуризация объектов Указываем, какие свойства в какие переменные должны перейти Объект справа
– существующий объект
Список слева – список переменных, в которые записываются соответствующие свойства

Слайд 21

Деструктуризация объекта

Деструктуризация объекта

Слайд 22

Использование возвращающей функции

Использование возвращающей функции

Слайд 23

Другое имя переменной

1

Другое имя переменной 1

Слайд 24

Значение по умолчанию

Значение по умолчанию

Слайд 25

Отделение объявления от присваивания

1

Отделение объявления от присваивания 1

Слайд 26

Использование конкретного имени

Использование конкретного имени

Слайд 27

Вложенные деструктуризации

Вложенные деструктуризации

Слайд 28

Функции

Функции

Слайд 29

Параметры по умолчанию

Параметры по умолчанию

Слайд 32

Оператор spread

В нашем случае, rest - это массив, а значит, можно использовать

Оператор spread В нашем случае, rest - это массив, а значит, можно
методы map, forEach и т.д.

Слайд 33

Свойство name

Свойство name

Слайд 34

Стрелочные функции

Стрелочные функции

Слайд 35

Стрелочные функции

Выражения имеют более короткий синтаксис, всегда анонимные и лексически привязанные к

Стрелочные функции Выражения имеют более короткий синтаксис, всегда анонимные и лексически привязанные
значению this.
Синтаксис: (param1, param2, paramN) => expression

Слайд 36

Особенности использования стрелочных функций

Лексическое связывание. Значения this, super и arguments определяются

Особенности использования стрелочных функций Лексическое связывание. Значения this, super и arguments определяются
не тем, как стрелочные функции были вызваны, а тем, как они были созданы
Неизменяемые this, super и arguments. Значения этих переменных внутри стрелочных функций остаются неизменными на протяжении всего жизненного цикла функции
Стрелочные функции не могут быть использованы как конструктор
Недоступность «собственного» значения переменной arguments, this ...

Слайд 37

Короткая запись

Короткая запись

Слайд 38

Пример

Пример

Слайд 39

Отсутствие Arguments

Отсутствие Arguments