Dalam beberapa kasus, kita perlu menghapus elemen kosong dalam array untuk mendapatkan hasil yang lebih akurat. Salah satu cara untuk melakukan hal itu adalah dengan menggunakan metode delete
atau splice
. Namun, dalam artikel ini, kita akan membahas beberapa pendekatan lainnya untuk menghapus slot kosong dalam array.
Pendekatan 1: Menggunakan Metode delete
Metode delete
biasanya digunakan untuk menghapus properti dari objek, tetapi dalam kasus array, metode ini juga dapat digunakan untuk menghapus elemen. Contohnya:
var test = [];
test.push({ bezeichnung: "test_1" });
test.push({ bezeichnung: "test_2" });
test.push({ bezeichnung: "test_3" });
delete test[1];
console.log(test.length); // Output: 3
Namun, perlu diingat bahwa metode delete
tidak menghapus elemen secara fisik dari array, tetapi hanya menghapus referensi ke elemen tersebut.
Pendekatan 2: Menggunakan Metode splice
Metode splice
biasanya digunakan untuk memotong dan menggabungkan array. Dalam kasus ini, kita dapat menggunakan metode ini untuk menghapus elemen yang tidak diinginkan:
var test = [];
test.push({ bezeichnung: "test_1" });
test.push({ bezeichnung: "test_2" });
test.push({ bezeichnung: "test_3" });
test.splice(1, 1);
console.log(test.length); // Output: 2
Pendekatan 3: Menggunakan Metode filter
Metode filter
biasanya digunakan untuk mengurangi array menjadi sub-array yang sesuai dengan kriteria tertentu. Dalam kasus ini, kita dapat menggunakan metode ini untuk menghapus elemen kosong:
var test = [];
test.push({ bezeichnung: "test_1" });
test.push({ bezeichnung: "test_2" });
test.push({ bezeichnung: "test_3" });
delete test[1];
console.log(test.length); // Output: 3
console.log(test.filter(a => a).length); // Output: 2
Pendekatan 4: Menggunakan Metode flat
Metode flat
biasanya digunakan untuk menggabungkan array yang memiliki tingkat nesting. Dalam kasus ini, kita dapat menggunakan metode ini untuk menghapus elemen kosong:
var test = [];
test.push({ bezeichnung: "test_1" });
test.push({ bezeichnung: "test_2" });
test.push({ bezeichnung: "test_3" });
test.flat();
console.log(test.length); // Output: 3
Pendekatan 5: Menggunakan Fungsi Custom
Kita dapat membuat fungsi custom untuk menghapus elemen kosong:
function removeEmptyElements(arr) {
let result = [];
for (let i = 0; i < arr.length; i++) {
if (arr[i] !== undefined && arr[i] !== null && arr[i] !== "") {
result.push(arr[i]);
}
}
return result;
}
var test = [];
test.push({ bezeichnung: "test_1" });
test.push({ bezeichnung: "test_2" });
test.push({ bezeichnung: "test_3" });
delete test[1];
let filteredArr = removeEmptyElements(test);
console.log(filteredArr.length); // Output: 2
Dalam artikel ini, kita telah membahas beberapa pendekatan untuk menghapus slot kosong dalam array di JavaScript. Kita dapat memilih pendekatan yang paling sesuai dengan kebutuhan kami.