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

Suggested prompts:

Can you explain how the filter() method differs from the map() method?

Can you show more examples of using filter() with different data types?

What happens if no elements satisfy the filter condition?

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