Työskentely taulukoiden (array) kanssa
Lisää taulukkojuttuja!
Voimme tehdä paljon enemmän taulukoiden (array) kanssa kuin vain lisätä tai poistaa niistä elementtejä.
Tarkista, sisältääkö taulukko arvon
JavaScript tarjoaa yksinkertaisen tavan tarkistaa, sisältääkö taulukko tietyn arvon käyttämällä includes()-metodia. Kun kutsut array.includes(arvo), se palauttaa true, jos arvo löytyy, ja muussa tapauksessa false.
1let fruits = ["omena", "banaani", "kirsikka"];
2console.log(fruits.includes("banaani")); // tulostaa true
3console.log(fruits.includes("mango")); // tulostaa falseElementin indeksin löytäminen
Arvon sijainnin löytämiseksi taulukosta voit käyttää indexOf()-metodia. Tämä metodi palauttaa kohda (indeksin) josta kyseinen arvo löytyy, tai -1, jos sitä ei löydy.
1let fruits = ["omena", "banaani", "kirsikka"];
2console.log(fruits.indexOf("banaani")); // tulostaa 1
3console.log(fruits.indexOf("mango")); // tulostaa -1Elementtien etsiminen find()-metodilla
Mikä on Array.find()?
**Array.find() **-metodi auttaa sinua etsimään taulukosta ensimmäisen elementin, joka täyttää tietyn ehdon. Kun kutsut array.find(callback), JavaScript käy läpi taulukon ja kutsuu takaisinkutsufunktiota (callback) jokaiselle elementille. Kun takaisinkutsu palauttaa true, find() palauttaa kyseisen elementin. Jos mikään elementti ei täytä ehtoa, se palauttaa undefined-arvon.
Nimetyn funktion käyttö
Toisinaan on hyödyllistä kirjoittaa takaisinkutsufunktio erikseen (nimettynä funktiona) ennen sen välittämistä find()-metodille. Tämä tekee joskus koodistasi selkeämpää.
Esimerkiksi, oletetaan että sinulla on liuta numeroita ja haluat löytää ensimmäisen parillisen numeron. Voit kirjoittaa jotakin tämän näköistä:
1function isEven(num) {
2 return num % 2 === 0;
3}
4
5let numbers = [1, 3, 5, 8, 10];
6let firstEven = numbers.find(isEven);
7console.log(firstEven); // tulostaa 8Poista elementti indeksillä käyttäen splice()-metodia
Toisinaan haluat poistaa elementin tietyltä paikalta taulukosta. Splice()-metodi mahdollistaa elementtien poiston annetussa indeksissä. Kutsuttaessa splice(indeksi, määrä), se poistaa elementit annetusta indeksistä alkaen ja palauttaa poistettujen alkoiden taulukon.
Esimerkiksi:
1let numbers = [10, 20, 30, 40];
2let poistettu = numbers.splice(2, 1);
3console.log(numbers); // tulostaa [10, 20, 40]
4console.log(poistettu); // tulostaa [30]Elementtien poistaminen ehdolla filter()-metodilla
Filter()-metodi luo uuden taulukon, joka sisältää vain ehdot täyttävät alkio. Toisin kuin splice(), filter() ei muuta alkuperäistä taulukkoa - se palauttaa uuden taulukon.
Esimerkiksi, jos haluat poistaa kaikki arvon 5 esiintymät taulukosta:
1let arvot = [5, 10, 5, 20, 5, 30];
2let suodatettu = arvot.filter(function(item) {
3 return item !== 5;
4});
5console.log(suodatettu); // tulostaa [10, 20, 30]Harjoitukset
Hakkeroinnin oppiminen alkaa tästä
Sadat interaktiiviset kurssit, virtuaalilabrat ja CTF-haasteet selaimessasi. Aloita ilmainen kokeilu ilman korttitietoja.