Menukar HTMLCollection kepada tatasusunan boleh dicapai melalui cara berulang, menambahkan setiap item pada tatasusunan secara manual. Walau bagaimanapun, terdapat pendekatan yang lebih cekap untuk penukaran ini.
Pendekatan Kod Asli:
Satu pendekatan sedemikian menggunakan kaedah slice bagi Array.prototype, seperti yang ditunjukkan oleh kod berikut coretan:
var arr = Array.prototype.slice.call(htmlCollection);
Kaedah ini secara berkesan mencontohi kefungsian lelaran lelaran, menyediakan cara penukaran yang cekap.
Versi Ringkas:
Untuk lebih ringkas, ungkapan di bawah mencapai perkara yang sama hasil:
var arr = [].slice.call(htmlCollection);
Array.from (ES6 ):
Dalam ECMAScript 2015 dan versi yang lebih baru, kaedah Array.from menawarkan penyelesaian asli untuk menukar objek boleh lelaran kepada tatasusunan, termasuk HTMLCollections:
var arr = Array.from(htmlCollection);
Spread Operator (ES6 ):
Spread Operator, yang diperkenalkan dalam ES6, menyediakan kaedah yang setara dari segi fungsi kepada Array.from, seperti yang digambarkan di bawah:
var arr = [...htmlCollection];
Perbandingan Prestasi:
Untuk analisis perbandingan kaedah ini, rujuk penanda aras berikut: http://jsben.ch/h2IFA
Atas ialah kandungan terperinci Bagaimana dengan Cekap Menukar HTMLCollection kepada Array?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!