Metode JavaScript Array filter () mengembalikan array baru dengan semua elemen yang lulus pengujian yang ditentukan oleh fungsi yang diberikan.
Sintaks dari filter()
metode ini adalah:
arr.filter(callback(element), thisArg)
Di sini, arr adalah sebuah array.
filter () Parameter
The filter()
Metode mengambil di:
- callback - Fungsi uji untuk dijalankan pada setiap elemen array; kembali
true
jika elemen lulus ujian, jika tidakfalse
. Dibutuhkan:- elemen - Elemen saat ini yang diteruskan dari larik.
- thisArg (opsional) - Nilai yang akan digunakan seperti
this
saat menjalankan callback. Secara default, iniundefined
.
Kembalikan nilai dari filter ()
- Mengembalikan larik baru dengan hanya elemen yang lulus tes.
Catatan :
filter()
tidak mengubah larik asli.filter()
tidak dijalankancallback
untuk elemen array tanpa nilai.
Contoh 1: Memfilter nilai dari Array
const prices = (1800, 2000, null, 3000, 5000, "Thousand", 500, 8000) function checkPrice(element) ( return element> 2000 && !Number.isNaN(element); ) let filteredPrices = prices.filter(checkPrice); console.log(filteredPrices); // ( 3000, 5000, 8000 ) // using arrow function let newPrices = prices.filter((price) => (price> 2000 && !Number.isNaN(price))); console.log(newPrices); // ( 3000, 5000, 8000 )
Keluaran
(3000, 5000, 8000) (3000, 5000, 8000)
Di sini, semua angka kurang dari atau sama dengan 2000 , dan semua nilai non-numerik disaring.
Contoh 2: Mencari di Array
const languages = ("JavaScript", "Python", "Ruby", "C", "C++", "Swift", "PHP", "Java"); function searchFor(arr, query) ( function condition(element) ( return element.toLowerCase().indexOf(query.toLowerCase()) !== -1; ) return arr.filter(condition); ) let newArr = searchFor(languages, "ja"); console.log(newArr); // ( 'JavaScript', 'Java' ) // using arrow function const searchArr = (arr, query) => arr.filter(element => element.toLowerCase().indexOf(query.toLowerCase()) !== -1); let newLanguages = searchArr(languages, "p"); console.log(newLanguages); // ( 'JavaScript', 'Python', 'PHP' )
Keluaran
('JavaScript', 'Java') ('JavaScript', 'Python', 'PHP')
Di sini, elemen dan kueri keduanya diubah menjadi huruf kecil, dan metode indexOf () digunakan untuk memeriksa apakah kueri ada di dalam elemen. Elemen-elemen yang tidak lulus tes ini akan disaring.
Bacaan yang Direkomendasikan: JavaScript Array map ()