В видео рассмотрен один из операторов итерирования языка JavaScript, который называется "FOR IN". Он умеет работать с перечислимыми свойствами объектов. Он знает их общее количество, поэтому точно понимает когда ему нужно остановиться.
Цикл затрагивает тему дескрипторов свойств объектов, доступность к перечислению, а также наследование свойств от своих предков.
00:00 Операторы итерирования по стандарту ECMAScript
01:30 Производства операторов "FOR IN" и "FOR OF"
02:40 Простой объект автомобиля
04:20 Запускаем первый цикл "FOR IN" по объекту автомобиля
05:00 Цикл "FOR IN" работает по массиву, в том числе
07:25 Сравниваем обычный цикл "FOR" с циклом "FOR IN"
08:50 Проблема с обычным циклом "FOR"
10:45 Ходим по реальным ключам объекта циклом "FOR IN"
11:45 Массив из объектов. Разное количество ключей.
14:32 Обход объектов и их ключей двумя циклами "FOR IN"
19:20 Делаем вызовы своей функции для отбора объектов
21:35 Альтернативный способ обхода массива из объектов
24:00 Итог сравнения подходов к решению задачи
25:40 Наследование свойств от объекта к объекту
27:10 Цикл "FOR IN" по наследованному объекту
29:40 Изучаем предков объекта "masha"
30:25 Перечислимые свойства объектов
31:53 Меняем дескрипторы [[Enumerable]] для 4 свойств у предков "masha"
32:55 Создаём нового потомка, который унаследует неперечислимые свойства
34:20 Смотрим на предков "sveta"
35:10 Зачем отключать свойства для перечисления?
38:45 Цикл "FOR IN" без "let"
41:10 Производство цикла "FOR IN" где "lookahead ≠ let ["
42:50 Проблема деструктуризации массива в цикле "FOR IN"
45:30 Почему деструктуризации массива в цикле "FOR IN" не подходит для работы?
49:10 Проблема слова "let" и его исторические предпосылки
Благодарю за просмотр!
Вы можете поддержать канал монеткой -
Номер карты РФ - 4276 5500 2378 3189
Ваша материальная поддержка придаст мне больше мотивации на создание нового материала.
Стандарт ECMAScript - https://tc39.es/ecma262/multipage/
Раздел "14.7.5 The for-in, for-of, and for-await-of Statements" - https://tc39.es/ecma262/multipage/ecm...
Раздел "ReservedWord" - https://tc39.es/ecma262/multipage/ecm...
Раздел "Table 3: Attributes of an Object property" - https://tc39.es/ecma262/multipage/ecm...
Раздел "13.15.5 Destructuring Assignment" - https://tc39.es/ecma262/multipage/ecm...