Podstawy w javascript – tablice
Podstawowe metody w javascript
W tym artykule zaprezentuje niezbędne metody dla programisty w javascript.
Przyjmijmy, że mamy takie tablice:
var names = ["Lavon Hyatt", "Joy Stracke", "Sarai Hauck", "Abagail Farrell", "Jarret Pagac"],
numbers = [34, 1, 4, 10, 24, 2, 9, 3, 7];
metoda .slice()
Użycie metody:
names.slice()
Metoda ta ma na celu skopiowanie części tablicy z innej już istniejącej (co oznacza, że nie zmienia oryginalnej tablicy).
Przyjmuje min. jeden argument – index, co zonacza że od niego zaczyna się kopiowanie tablicy, aż do końca.
Powołując się na przykładową tablicę names. zaprezentuje przykład:
// Wypiszmy najpierw tablicę, aby mieć ją przed oczami:
console.log(names);
var halfArray = names.slice(0, 2);
// Po zastosowaniu metody .slice() i wywołaniu oryginalnej tablicy nic nie powinno się w niej zmienić
console.log(names);
// Po wywołaniu zmiennej halfArray powinna Ona posiadać dwa elementy
console.log(halfArray);
Wynik:
["Lavon Hyatt", "Joy Stracke"]
Podsumowując:
Jak możemy się zorientować na tym przykładzie. Metoda ta
- kopiuje elementy (jednocześnie nie narusza oryginalnej tablicy)
- Przypisuje je do zmiennej
- Przyjmuje dwa parapetry pierwszy to index od którego zaczyna kopiować, a drugi to LICZBA ELEMENTÓW
dokumentacja: https://developer.mozilla.org/pl/docs/Web/JavaScript/Referencje/Obiekty/Array/slice
metoda .join()
Metoda ta łączy wszystkie elementy tablicy i zamienia je na string. Przyjmuje jeden parametr, który ma za zadanie oddzielać elementy od siebie.
Przykład użycia:
console.log(names.join(", "));
metoda .indexOf()
Metoda ta ma na celu sprawdzenie, czy w Naszej tablicy znajduje się jakiś element i zwraca ona nr indexu pod którym znajduje się szukany element.
Należy uważać, gdyż pierwszy element ma index 0 dlatego przy porównaniu należy przyrównywać do -1.
Przykład uzycia:
console.log(names.indexOf("Abagail Farrell"));
Wynikiem powyższego kody będzie:
3
– Dlaczego? Nie trudno się domyśleć, że Abagail Farrell jest przypisana DO INDEXU 3.
metoda .sort()
Jak nie trudno się domyśleć, metoda ta służy do sortowania elementów w tablicy. Jednak użycie metody, np na tablicy numbers
console.log(numbers.sort());
ułoży nam w taki sposób:
[34, 1, 4, 10, 24, 2, 9, 3, 7];
Widzimy, że nie o to nam chodziło… dlatego też spróbujmy zapisu:
numbers.sort(function(a, b){
return a-b;
});
Dla tablicy zawierające stringi należy zrobić to w taki sposób:
names.sort(function(a, b){
if(a < b) {
return -1;
} else if(a > b) {
return 1;
} else {
return 0;
}
});
metoda .foreach()
Czyli inaczej dla każego elementu z tablicy wykonaj funkcję. Funkcja ta przyjmuje 3 parametry. Oczywiście możemy a nie musimy je podawać.
numbers.forEach(function(value, index, array){
console.log(value;)
});
Metoda ta wypisze wszystkie elementy z tablicy numbers.
metoda .filter()
Jest to metoda która jako parametr przyjmuje funkcję, a ta funkcja przyjmuje wartość. Funckja ma za zadanie przefiltrować dane i zwrócić true, albo false. Jeżeli zwróci true – wrzuci tą wartość do aktulanie tworzonej tablicy, jeśli false, to ją pominie.
var wiekszaOd12 = numbers.filter(function(value){
return value > 12;
});