Penapis Array Javascript ()

Kaedah JavaScript Array filter () mengembalikan array baru dengan semua elemen yang lulus ujian yang ditentukan oleh fungsi yang diberikan.

Sintaks filter()kaedahnya adalah:

 arr.filter(callback(element), thisArg)

Di sini, arr adalah tatasusunan.

penapis () Parameter

The filter()Cara mengambil masa dalam:

  • panggilan balik - Fungsi ujian untuk dilaksanakan pada setiap elemen array; kembali truejika elemen lulus ujian, yang lain false. Ia memerlukan:
    • elemen - Elemen semasa yang dilalui dari larik.
  • thisArg (pilihan) - Nilai untuk digunakan thissemasa menjalankan panggilan balik. Secara lalai, ia adalah undefined.

Nilai pulangan dari penapis ()

  • Mengembalikan tatasusunan baru dengan hanya elemen yang lulus ujian.

Catatan :

  • filter() tidak mengubah susunan asal.
  • filter()tidak dilaksanakan callbackuntuk elemen array tanpa nilai.

Contoh 1: Menyaring 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 )

Pengeluaran

 (3000, 5000, 8000) (3000, 5000, 8000)

Di sini, semua nombor kurang dari atau sama dengan 2000 , dan semua nilai bukan angka disaring.

Contoh 2: Mencari dalam 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' )

Pengeluaran

 ('JavaScript', 'Java') ('JavaScript', 'Python', 'PHP')

Di sini, elemen dan pertanyaan keduanya ditukar menjadi huruf kecil, dan kaedah indexOf () digunakan untuk memeriksa apakah pertanyaan ada di dalam elemen. Unsur-unsur yang tidak lulus ujian ini disaring.

Bacaan yang Disyorkan: Peta Array JavaScript ()

Artikel menarik...