Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Oppiskele Taulukoiden Suodattaminen Filter()-Metodilla | Edistyneet Taulukkometodit ja Muunnokset
Javascriptin tietorakenteet

bookTaulukoiden Suodattaminen Filter()-Metodilla

Tässä luvussa perehdytään filter()-menetelmän yksityiskohtiin, selvennetään sen syntaksia, käyttötarkoituksia ja sitä, miten se mahdollistaa tarkennettujen taulukoiden luomisen.

filter()

filter()-menetelmä valitsee alkiot, jotka täyttävät tietyn ehdon. Tarkastellaan syntaksia:

array.filter((element, index, array) => {
  // Callback body
});

Tärkeimmät asiat filter()-menetelmästä:

  • Ei muuta alkuperäistä taulukkoa;
  • Käy alkuperäisen taulukon läpi alkio kerrallaan;
  • Palauttaa uuden taulukon;
  • Alkiot lisätään uuteen taulukkoon, jos ne täyttävät callback-ehdon;
  • Jos callback palauttaa true, alkio sisällytetään; muuten se jätetään pois.

Esimerkit

filter()-menetelmän todellinen tehokkuus tulee esiin, kun sitä sovelletaan erilaisiin tilanteisiin. Tarkastellaan muutamia havainnollistavia esimerkkejä:

Esimerkki 1: Parittomien lukujen suodatus

Tässä esimerkissä filter()-menetelmä luo taulukon (oddNumbers), joka sisältää alkuperäisestä taulukosta vain parittomat luvut.

123456
const numbers = [15, 22, 37, 41, 58, 67, 72]; const oddNumbers = numbers.filter((number) => { return number % 2 !== 0; }); console.log(oddNumbers); // Output: 15, 37, 41, 67
copy

Esimerkki 2: Tuotteiden suodattaminen hintahaarukan perusteella

Tässä filter()-metodia käytetään poimimaan tuotteet, joiden hinta on alle 500 dollarin, ja luomaan uusi taulukko (affordableProducts).

const products = [
  { name: "Keyboard", price: 220 },
  { name: "Smartphone", price: 800 },
  { name: "Tablet", price: 500 },
  { name: "Headphones", price: 120 },
  { name: "Camera", price: 1500 },
];

const affordableProducts = products.filter((product) => product.price < 500);
console.log(affordableProducts); // Output: [ { name: "Keyboard", price: 220 }, { name: "Headphones", price: 120 } ]

1. Mitä filter()-metodi tekee?

2. Mikä on filter()-metodin keskeinen ominaisuus?

3. Alla olevassa esimerkissä, mikä ehto tulisi asettaa, jotta numbersGreaterThan20-taulukko sisältäisi luvut, jotka ovat suurempia kuin 20?

question mark

Mitä filter()-metodi tekee?

Select the correct answer

question mark

Mikä on filter()-metodin keskeinen ominaisuus?

Select the correct answer

question mark

Alla olevassa esimerkissä, mikä ehto tulisi asettaa, jotta numbersGreaterThan20-taulukko sisältäisi luvut, jotka ovat suurempia kuin 20?

Select the correct answer

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 5. Luku 3

Kysy tekoälyä

expand

Kysy tekoälyä

ChatGPT

Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme

Awesome!

Completion rate improved to 2.27

bookTaulukoiden Suodattaminen Filter()-Metodilla

Pyyhkäise näyttääksesi valikon

Tässä luvussa perehdytään filter()-menetelmän yksityiskohtiin, selvennetään sen syntaksia, käyttötarkoituksia ja sitä, miten se mahdollistaa tarkennettujen taulukoiden luomisen.

filter()

filter()-menetelmä valitsee alkiot, jotka täyttävät tietyn ehdon. Tarkastellaan syntaksia:

array.filter((element, index, array) => {
  // Callback body
});

Tärkeimmät asiat filter()-menetelmästä:

  • Ei muuta alkuperäistä taulukkoa;
  • Käy alkuperäisen taulukon läpi alkio kerrallaan;
  • Palauttaa uuden taulukon;
  • Alkiot lisätään uuteen taulukkoon, jos ne täyttävät callback-ehdon;
  • Jos callback palauttaa true, alkio sisällytetään; muuten se jätetään pois.

Esimerkit

filter()-menetelmän todellinen tehokkuus tulee esiin, kun sitä sovelletaan erilaisiin tilanteisiin. Tarkastellaan muutamia havainnollistavia esimerkkejä:

Esimerkki 1: Parittomien lukujen suodatus

Tässä esimerkissä filter()-menetelmä luo taulukon (oddNumbers), joka sisältää alkuperäisestä taulukosta vain parittomat luvut.

123456
const numbers = [15, 22, 37, 41, 58, 67, 72]; const oddNumbers = numbers.filter((number) => { return number % 2 !== 0; }); console.log(oddNumbers); // Output: 15, 37, 41, 67
copy

Esimerkki 2: Tuotteiden suodattaminen hintahaarukan perusteella

Tässä filter()-metodia käytetään poimimaan tuotteet, joiden hinta on alle 500 dollarin, ja luomaan uusi taulukko (affordableProducts).

const products = [
  { name: "Keyboard", price: 220 },
  { name: "Smartphone", price: 800 },
  { name: "Tablet", price: 500 },
  { name: "Headphones", price: 120 },
  { name: "Camera", price: 1500 },
];

const affordableProducts = products.filter((product) => product.price < 500);
console.log(affordableProducts); // Output: [ { name: "Keyboard", price: 220 }, { name: "Headphones", price: 120 } ]

1. Mitä filter()-metodi tekee?

2. Mikä on filter()-metodin keskeinen ominaisuus?

3. Alla olevassa esimerkissä, mikä ehto tulisi asettaa, jotta numbersGreaterThan20-taulukko sisältäisi luvut, jotka ovat suurempia kuin 20?

question mark

Mitä filter()-metodi tekee?

Select the correct answer

question mark

Mikä on filter()-metodin keskeinen ominaisuus?

Select the correct answer

question mark

Alla olevassa esimerkissä, mikä ehto tulisi asettaa, jotta numbersGreaterThan20-taulukko sisältäisi luvut, jotka ovat suurempia kuin 20?

Select the correct answer

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 5. Luku 3
some-alt