Слайд 22009 -2015
ECMA-262 5th Edition в декабре 2009
ECMA-262 5.1 Edition в июне 2011
ECMA-262
6th Edition в июне 2015
Слайд 4
Блочная область видимости (let и const)
Оператор let
Позволяет объявить локальную переменную с
областью видимости, ограниченной текущим блоком кода
Слайд 8Блочная область видимости
Оператор const
Значение констант не может быть изменено новым присваиванием
и не может быть переопределено. Константы подчиняются области видимости уровня блока
Слайд 10Деструктуризация
Деструктуризация- особый синтаксис присваивания, при котором можно присвоить массив или объект сразу
нескольким переменным, разбив его на части
Деструктуризация позволяет привязывать данные при совпадении паттерна
Поддерживается для массивов и объектов
Деструктуризация устойчива к ошибкам и во многом похожа на поиск поля в объекте
Возвращает undefined, если что-то пошло не так
Слайд 13Деструктуризация
Оператор spread
Значением rest будет массив из оставшихся элементов
Вместо rest можно
использовать другое имя переменной
Оператор spread - троеточие
Spread должен стоять только перед последним элементом
Слайд 16Отделение объявления от присваивания
Слайд 18Использование возвращающей функции
Слайд 20Деструктуризация объектов
Указываем, какие свойства в какие переменные должны перейти
Объект справа
– существующий объект
Список слева – список переменных, в которые записываются соответствующие свойства
Слайд 22Использование возвращающей функции
Слайд 25Отделение объявления от присваивания
1
Слайд 32Оператор spread
В нашем случае, rest - это массив, а значит, можно использовать
методы map, forEach и т.д.
Слайд 35Стрелочные функции
Выражения имеют более короткий синтаксис, всегда анонимные и лексически привязанные к
значению this.
Синтаксис: (param1, param2, paramN) => expression
Слайд 36Особенности использования стрелочных функций
Лексическое связывание. Значения this, super и arguments определяются
не тем, как стрелочные функции были вызваны, а тем, как они были созданы
Неизменяемые this, super и arguments. Значения этих переменных внутри стрелочных функций остаются неизменными на протяжении всего жизненного цикла функции
Стрелочные функции не могут быть использованы как конструктор
Недоступность «собственного» значения переменной arguments, this ...