Filter poľa Javascript ()

Metóda JavaScript Array filter () vracia nové pole so všetkými prvkami, ktoré vyhovejú testu definovanému danou funkciou.

Syntax filter()metódy je:

 arr.filter(callback(element), thisArg)

Tu je arr pole.

filter () parametre

filter()Metóda berie v:

  • spätné volanie - testovacia funkcia, ktorá sa má vykonať na každom prvku poľa; vráti, trueak prvok prejde testom, inak false. Trvá to:
    • prvok - Aktuálny prvok odovzdávaný z poľa.
  • thisArg (voliteľné) - hodnota, ktorá sa použije ako thispri uskutočňovaní spätného volania. V predvolenom nastavení je undefined.

Návratová hodnota z filtra ()

  • Vráti nové pole iba s prvkami, ktoré prešli testom.

Poznámky :

  • filter() nezmení pôvodné pole.
  • filter()sa nespustí callbackpre prvky poľa bez hodnôt.

Príklad 1: Filtrovanie hodnôt z poľa

 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 )

Výkon

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

Tu sa odfiltrujú všetky čísla menšie alebo rovné 2 000 a všetky nečíselné hodnoty.

Príklad 2: Vyhľadávanie v poli

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

Výkon

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

Tu sa element aj dotaz prevádzajú na malé písmená a pomocou metódy indexOf () sa kontroluje, či je dotaz v prvku prítomný. Tie prvky, ktoré v tomto teste neprejdú, sa odfiltrujú.

Odporúčané čítanie: Mapa poľa JavaScript ()

Zaujímavé články...