Javascript tömb szűrő ()

A JavaScript tömbszűrő () metódus új tömböt ad vissza az összes olyan elemgel, amely megfelel az adott függvény által meghatározott tesztnek.

A filter()módszer szintaxisa :

 arr.filter(callback(element), thisArg)

Itt az arr egy tömb.

filter () Paraméterek

A filter()módszer:

  • visszahívás - Az egyes tömbelemeken végrehajtandó tesztfunkció; visszatér, trueha az elem sikeresen teljesíti a tesztet false. Beletelik:
    • elem - A tömbből átadott aktuális elem.
  • thisArg (opcionális) - A thisvisszahívás végrehajtásakor használandó érték . Alapértelmezés szerint az undefined.

Visszatérési érték a szűrőből ()

  • Visszaad egy új tömböt, csak azokat az elemeket, amelyeknek megfelelt a teszt.

Megjegyzések :

  • filter() nem változtatja meg az eredeti tömböt.
  • filter()callbackértékek nélküli tömbelemekre nem hajt végre .

1. példa: Értékek kiszűrése a tömbből

 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 )

Kimenet

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

Itt kiszűrjük a 2000-nél kisebb vagy azzal egyenlő számokat , és az összes nem numerikus értéket.

2. példa: Keresés a tömbben

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

Kimenet

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

Itt mind az elem, mind a lekérdezés kisbetűvé konvertálódik, és az indexOf () metódussal ellenőrizzük, hogy van-e lekérdezés az elemen belül. Azokat az elemeket, amelyek nem teljesítik ezt a tesztet, kiszűrjük.

Ajánlott olvasmány: JavaScript tömb térkép ()

érdekes cikkek...