Коллекция 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
Коллекция Javascript объектов DOM - почему я не могу отменить с помощью Array.reverse()?
Мы используем файлы cookies для улучшения работы сайта. Оставаясь на нашем сайте, вы соглашаетесь с условиями использования файлов cookies. Чтобы ознакомиться с нашими Положениями о конфиденциальности и об использовании файлов cookie, нажмите здесь.