Javascript matrični filter ()

Metoda filtra JavaScript Array () vrne novo matriko z vsemi elementi, ki prestanejo preizkus, ki ga definira podana funkcija.

Sintaksa filter()metode je:

 arr.filter(callback(element), thisArg)

Tu je arr matrika.

filter () Parametri

filter()Metoda je v:

  • povratni klic - preskusna funkcija za vsak element matrike; vrne, trueče element opravi preizkus, sicer false. Vključuje:
    • element - trenutni element, ki se prenaša iz polja.
  • thisArg (neobvezno) - vrednost, ki se uporabi kot thispri izvajanju povratnega klica. Privzeto je undefined.

Vrnjena vrednost iz filtra ()

  • Vrne novo matriko samo z elementi, ki so prestali preizkus.

Opombe :

  • filter() ne spremeni prvotnega polja.
  • filter()se ne izvede callbackza elemente matrike brez vrednosti.

Primer 1: Filtriranje vrednosti iz polja

 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 )

Izhod

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

Tu se izločijo vsa števila, manjša ali enaka 2000 , in vse nenumerične vrednosti.

Primer 2: Iskanje v matriki

 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' )

Izhod

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

Tu se element in poizvedba pretvorita v male črke, metoda indexOf () pa se uporablja za preverjanje, ali je poizvedba znotraj elementa. Tisti elementi, ki tega preizkusa ne opravijo, se filtrirajo.

Priporočeno branje: Zemljevid matrike JavaScript ()

Zanimive Članki...