Применение итераторов, деструктуризации и for of для получение порядкового номера DOM элемента

preview_player
Показать описание
Пусть у нас есть некоторые DOM элементы. Давайте переберем их циклом for-of и в момент перебора получим их порядковый номер. Используем для этого итераторы ES6 и деструктуризацию.

Автор видео: Трепачёв Д.П.
Рекомендации по теме
Комментарии
Автор

Как интересно.
Ни разу не было проблемы, что использовал getElementsByTagName вместо querySelectorAll. Ведь результат был, по сути одним и тем же и с тем и с другим массивом в итоге можно было спокойно работать. До этого момента...
Первый возвращает HTML коллекцию, и в нем нет итераторов... Придется пользоваться querySel... Да за кого вы нас держите!?

<p id="id1">1</p>
<p id="id2">2</p>

<script>

let elems =

function* entries(elems){
for(let i = 0; i < elems.length; i++)
yield [i, elems[i]];
}

function* keys(elems){
for(let i = 0; i < elems.length; i++)
yield i;
}

function* values(elems){
for(let i = 0; i < elems.length; i++)
yield elems[i];
}

let ourEntries = entries(elems);
let ourKeys = keys(elems);
let ourValues = values(elems);

for(let [num, {id, innerHTML}] of ourEntries)
console.log(num, id, innerHTML);

for(let key of ourKeys)
console.log(key);

for(let value of ourValues)
console.log(value);

</script>

TonyVCLCSA
Автор

Погружение
...
var green =
green.addEventListener('click', func, true);

function func(event) {

}
Стадию, на которой произошло событие можно определить с помощью свойства event.eventPhase. Оно может принимать следующие значения: 1 - стадия перехвата, 2 - стадия цели, 3 - стадия всплытия.
====
какой-то неожиданный конец, ни уя не понятно!
Нафиг сайт, если после прочтения темы необходимо искать информацию в другом месте?

BoffkaBoffka