„Javascript“ masyvo filtras ()

„JavaScript“ masyvo filtro () metodas pateikia naują masyvą su visais elementais, kurie praeina duotosios funkcijos apibrėžtą testą.

filter()Metodo sintaksė yra tokia:

 arr.filter(callback(element), thisArg)

Čia arr yra masyvas.

filtras () Parametrai

filter()Metodas trunka:

  • atgalinis skambutis - kiekvieno masyvo elemento bandomoji funkcija; grąžinama, truejei elementas išlaikys testą false. Tai užima:
    • elementas - dabartinis elementas, perduodamas iš masyvo.
  • „thisArg“ (neprivaloma) - vertė, naudojama kaip thisvykdant atgalinį skambutį. Pagal nutylėjimą taip yra undefined.

Grąžinimo vertė iš filtro ()

  • Grąžina naują masyvą, kuriame yra tik testą išlaikę elementai.

Pastabos :

  • filter() nekeičia pradinio masyvo.
  • filter()nevykdo callbackmasyvo elementų be reikšmių.

1 pavyzdys: reikšmių filtravimas iš masyvo

 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 )

Rezultatas

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

Čia filtruojami visi skaičiai, mažesni arba lygūs 2000 , ir visos ne skaitinės vertės.

2 pavyzdys: paieška masyve

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

Rezultatas

 („JavaScript“, „Java“) („JavaScript“, „Python“, „PHP“)

Čia elementas ir užklausa konvertuojami į mažąsias, o „indexOf“ () metodas naudojamas patikrinti, ar užklausa yra elemento viduje. Tie elementai, kurie neišlaiko šio testo, yra filtruojami.

Rekomenduojamas skaitymas: „ Java“ masyvo žemėlapis ()

Įdomios straipsniai...