Saya mencoba untuk menghapus elemen dalam array di a forEach
lingkaran, tetapi mengalami masalah dengan solusi standar yang pernah saya lihat.
Inilah yang sedang saya coba:
review.forEach(function(p){
if(p === '\u2022 \u2022 \u2022'){
console.log('YippeeeE!!!!!!!!!!!!!!!!')
review.splice(p, 1);
}
});
Saya tahu itu masuk ke dalam if
karena saya melihat YippeeeeeE!!!!!!!!!!!!!
di konsol.
MASALAH SAYA: Saya tahu bahwa loop for saya dan jika logikanya terdengar, tetapi upaya saya untuk menghapus elemen saat ini dari array gagal.
MEMPERBARUI:
Mencoba jawaban Xotic750, dan elemennya masih belum dihapus:
Inilah fungsi di kode saya:
review.forEach(function (item, index, object) {
if (item === '\u2022 \u2022 \u2022') {
console.log('YippeeeE!!!!!!!!!!!!!!!!')
object.splice(index, 1);
}
console.log('[' + item + ']');
});
Berikut adalah output di mana lariknya masih belum dihapus:
[Scott McNeil]
[reviewed 4 months ago]
[ Mitsubishi is AMAZING!!!]
YippeeeE!!!!!!!!!!!!!!!!
[• • •]
Jadi jelas akan masuk ke pernyataan if seperti yang diarahkan, tapi juga jelas bahwa [• • •] masih ada.
index
atribut daripada item
untuksplice
forEach
? Jika Anda ingin menghapus item, fungsi yang paling tepat adalahfilter
.