Коллекция Javascript объектов DOM - почему я не могу отменить с помощью Array.reverse()?

getElementsByTag() возвращает NodeList вместо arrays Array. Вы можете преобразовать ecmascript NodeList в массив, но обратите arrays внимание, что массив будет .js другим объектом, поэтому ecmascript его реверсирование не повлияет jsonarray на положение узлов DOM.

var listNodes = document.getElementById("myDivHolderId").getElementsByTagName("img");
var arrayNodes = Array.slice.call(listNodes, 0);
arrayNodes.reverse();

Чтобы vanilla-javascript изменить положение, вам придется bytearray удалить узлы DOM и снова ecmascript добавить их все в правильное vanilla-javascript положение.

Array.prototype.slice.call(arrayLike, 0) — отличный способ javascript преобразовать массив в массив, но character-arrays если вы используете библиотеку vanilla-javascript JavaScript, он может обеспечить javascript-library даже лучший/быстрый способ vanillajs сделать это. Например, в array jQuery есть $.makeArray(arrayLike).

Вы также можете string-array использовать методы Array vanillajs непосредственно в NodeList:

Array.prototype.reverse.call(listNodes);

javascript

arrays

2022-10-25T17:22:20+00:00
Вопросы с похожей тематикой, как у вопроса:

Коллекция Javascript объектов DOM - почему я не могу отменить с помощью Array.reverse()?