Преобразование из NodeList в массив: раскрытие самого быстрого подхода
Предыдущие обсуждения предполагали использование Array.prototype.slice.call(nl) Метод предлагает наиболее эффективное преобразование NodeList в Array. Однако недавние сравнительные исследования выявили поразительно иную реальность. Вопреки распространенному мнению, традиционный подход цикла for for(var i = 0, n; n = nl[i]; i) arr.push(n); превосходит вышеупомянутый метод с заметным трехкратным отрывом.
Это озадачивающее открытие вызывает любопытство: является ли это простой особенностью Chromium 6 или скрывается еще более быстрый подход? К счастью, с появлением ES6 мы получили решение, которое без особых усилий превосходит оба предложенных ранее метода.
Array.from(): окончательное решение
The Функция Array.from(), представленная в ES6, предоставляет краткие и невероятно быстрые средства преобразования NodeList в массив. Его синтаксис прост:
// nl is a NodeList let myArray = Array.from(nl)
Эта единственная строка кода выполняет преобразование с непревзойденной эффективностью, значительно превосходя своих предшественников. Таким образом, поиск самого быстрого метода преобразования завершается триумфальным господством метода Array.from(), предлагающего разработчикам беспрецедентное решение этой важной задачи.
Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3