Rumah >hujung hadapan web >tutorial js >Bagaimanakah Saya Boleh Memanjangkan Tatasusunan JavaScript Di Tempat dengan Cekap?

Bagaimanakah Saya Boleh Memanjangkan Tatasusunan JavaScript Di Tempat dengan Cekap?

Susan Sarandon
Susan Sarandonasal
2024-11-21 04:05:19799semak imbas

How Can I Efficiently Extend a JavaScript Array In-Place?

Memperluas Tatasusunan JavaScript: Penyelesaian Di Tempat

Melanjutkan tatasusunan JavaScript sedia ada dengan tatasusunan lain tanpa mencipta tatasusunan baharu bukanlah perkara mudah operasi. Tidak seperti kaedah lanjutan Python, JavaScript tidak menyediakan penyelesaian terbina dalam.

Nasib baik, kami boleh mencapai tingkah laku ini dengan cekap menggunakan kaedah .push() bersama-sama dengan operator spread(...).

const a = [1, 2];
const b = [3, 4, 5];

a.push(...b);

Pengendali sebaran mengembangkan elemen b menjadi hujah individu, menghantarnya kepada a.push(). Ini menambahkan keseluruhan kandungan b ke a dengan berkesan.

Sebagai alternatif, dalam penyemak imbas lama yang tidak menyokong ECMAScript 6, anda boleh menggunakan kaedah .apply():

a.push.apply(a, b);

Walau bagaimanapun, pendekatan ini mungkin gagal kerana ralat limpahan tindanan apabila bilangan elemen dalam b adalah berlebihan. Dalam kes sedemikian, teknik berasaskan gelung tradisional disyorkan:

for (const element of b) {
  a.push(element);
}

Ini memastikan elemen dilampirkan pada satu demi satu, mengelakkan isu limpahan tindanan.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Memanjangkan Tatasusunan JavaScript Di Tempat dengan Cekap?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn