Menggelung Melalui Tatasusunan dan Mengalih Keluar Item Tanpa Gangguan
Dalam JavaScript, menggunakan kaedah splice() untuk mengalih keluar item daripada tatasusunan selalunya memaparkan cabaran untuk melelaran melalui tatasusunan tanpa menemui nilai yang tidak ditentukan. Dalam kod yang disediakan, penggunaan splice() dalam gelung for menyebabkan sifat saat item lelongan menjadi tidak ditentukan, membawa kepada ralat.
Untuk menyelesaikan isu ini, pertimbangkan alternatif berikut:
1. Kurangkan Indeks Gelung Selepas splice()
Selepas mengalih keluar item menggunakan splice(), anda boleh mengurangkan indeks gelung (i) untuk mengimbangi pengindeksan semula tatasusunan. Ini memastikan bahawa lelaran seterusnya diteruskan daripada indeks yang betul.
for (i = 0, len = Auction.auctions.length; i < len; i++) { auction = Auction.auctions[i]; Auction.auctions[i]['seconds'] --; if (auction.seconds < 0) { Auction.auctions.splice(i, 1); i--; // Decrement the loop index } }
2. Lelaran dalam Songsang
Dengan melelaran melalui tatasusunan dalam susunan terbalik, pengindeksan semula selepas splice() tidak akan menjejaskan item yang tinggal dalam lelaran.
var i = Auction.auctions.length while (i--) { ... if (...) { Auction.auctions.splice(i, 1); } }
Dengan menerima pakai salah satu daripada pendekatan ini, anda boleh lelaran dengan cekap melalui tatasusunan dan mengalih keluar item tanpa menghadapi isu nilai yang tidak ditentukan dan memastikan integriti gelung proses.
Atas ialah kandungan terperinci Bagaimana untuk Membuang Item Tatasusunan dengan Selamat dalam JavaScript Semasa Menggelung?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!