Как перебирать дочерние элементы в JavaScript: исправление неработающего элемента «element.children.forEach»

Предоставленный вами код JavaScript, element.children.forEach, не работает, поскольку свойство childrenэлемента возвращает коллекцию дочерних элементов в виде коллекции HTML. который не является массивом. Поэтому вы не можете напрямую использовать для него метод forEach.

Чтобы перебирать дочерние элементы элемента, вы можете преобразовать коллекцию HTML в массив с помощью метода Array.from()или оператора распространения ([...element.дети]). Если у вас есть массив, вы можете использовать метод forEachдля перебора его элементов.

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

Array.from(element.children).forEach(function(child) {
    // Do something with each child element
    console.log(child);
});

В качестве альтернативы вы можете использовать другие методы итерации, такие как цикл for...ofили Array.prototype.forEach.call():

// Using for...of loop
for (const child of element.children) {
    // Do something with each child element
    console.log(child);
}
// Using Array.prototype.forEach.call()
Array.prototype.forEach.call(element.children, function(child) {
    // Do something with each child element
    console.log(child);
});

Реализуя один из этих подходов, вы сможете перебирать дочерние элементы элемента в JavaScript.