NodeList から Array への変換: 最も迅速なアプローチを明らかにする
以前の議論では、Array.prototype.slice.call(nl) を利用することが提案されていました。このメソッドは、NodeList から Array への最も効率的な変換を提供します。しかし、最近のベンチマークでは、驚くほど異なる現実が明らかになりました。一般的な考えに反して、従来の for ループ アプローチ for(var i = 0, n; n = nl[i]; i) arr.push(n); は、前述の方法を 3 倍の大幅なマージンで上回っています。
この不可解な発見は好奇心を刺激します。これは Chromium 6 の単なる癖なのでしょうか、それともさらに迅速なアプローチが隠されているのでしょうか?幸いなことに、ES6 の出現により、以前に提案された両方の方法を簡単に上回るソリューションが提供されます。
Array.from(): 究極のソリューション
ES6 で導入された Array.from() 関数は、NodeList を Array に変換する簡潔かつ非常に高速な手段を提供します。その構文は単純です:
// nl is a NodeList let myArray = Array.from(nl)
この 1 行のコードは、比類のない効率で変換を達成し、以前のコードを大幅に上回ります。したがって、最も迅速な変換メソッドの探求は Array.from() の勝利の統治で最高潮に達し、開発者にこの重要なタスクに対する比類のないソリューションを提供します。
以上がNodeList から Array へ: `Array.from()` は本当に最速ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。