If you're seeing this message, it means we're having trouble loading external resources on our website.

Jeżeli jesteś za filtrem sieci web, prosimy, upewnij się, że domeny *.kastatic.org i *.kasandbox.org są odblokowane.

Główna zawartość

Przegląd: Tablice

To jest przegląd tego, co zostało omówione w poradniku na temat tablic.
Często chcemy przechowywać listę wartości podczas pisania programu, i w JavaScripcie używamy do tego typu zwanego tablicą.
By stworzyć tablicę, deklarujemy zmienną tak jak zwykle. Następnie otaczamy listę naszych wartości kwadratowymi nawiasami i oddzielamy każdą z nich za pomocą przecinka:
var xPositions = [33, 72, 64];
Możemy przechowywać każdy rodzaj wartości występujący w JavaScripcie za pomocą tablicy - nie tylko liczby. Oto przykład, w którym przechowujemy listę ciągów znaków:
var myFriends = ['Winston', 'OhNoesGuy', 'John', 'Sophia'];
Często chcemy wyświetlić długość tablicy, albo zrobić coś opierając się na długości tablicy. Każda tablica ma wartość length, która informuje nas o aktualnej długości tablicy:
text(myFriends.length, 200, 200); // Wyświetla wartość "4"
Gdy chcemy odnieść się do konkretnej wartości w tablicy, odnosimy się do niej poprzez "indeks" w tablicy, który odpowiada jej pozycji. Pierwszym indeksem w tablicy jest "0", więc aby dostać się do pierwszego elementu, musimy podać nazwę tablicy, po czym w kwadratowych nawiasach liczbę 0:
text(myFriends[0], 200, 0); // Wyświetla napis "Winston"
Drugi element jest na indeksie "1", trzeci na indeksie "2;" a czwarty na indeksie "3":<:
text(myFriends[1], 200, 100); // Wyświetla "OhNoesGuy"
text(myFriends[2], 200, 200); // Wyświetla "John"
text(myFriends[3], 200, 300); // Wyświetla "Sophia"
Indeksowanie od zera to jedna z tych rzeczy, które sprawiają problemu początkującym programistom, więc pamiętaj o tym zaczynając swoją przygodę z tablicami. W końcu się do tego przyzwyczaisz!
Często chcemy wykonać jakieś działanie dla każdego elementu w tablicy, tak jak wcześniej używaliśmy metody text() by wyświetlać napisy. Zamiast pisać za każdym razem ten kod, lepiej użyć pętli do iterowania po każdym obiekcie w tablicy i wykonania pewnych poleceń na każdym elemencie wewnątrz pętli. Zaczynamy od indeksu 0, następnie kierujemy się w stronę końca tablicy dodając 1 do indeksu za każdym razem. Oto, jak to zrobimy:
for (var i = 0; i < myFriends.length; i++) {
   text(myFriends[i], 200, (i+1)*100);
}
Zauważ, że umieściliśmy i wewnątrz kwadratowych nawiasów, ponieważ odpowiada ona wartości aktualnego indeksu za każdym razem, gdy pętla jest uruchamiana.
Tablice mogą być modyfikowane na wiele sposobów. Na początek zmieńmy ich wartości:
myFriends[1] = "TheErrorBuddy";
Możemy także dodawać zupełnie nowe wartości do tablic, używając metody push(), w parametrze przekazując nową wartość:
myFriends.push("Hopper");
Po uruchomieniu tej metody, wielkość naszej tablicy zmieni się zgodnie ze stanem rzeczywistym, a ostatni indeks naszej tablicy będzie teraz wynosił 4 zamiast 3.
Jeśli chcesz zobaczyć pełną listę rzeczy którą możesz zrobić z tablicami w JavaScripcie, zapoznaj się z zawartością tego odnośnika. Ale nie martw się, materiały z tego przeglądu również pozwolą Ci wiele osiągnąć!

Chcesz dołączyć do dyskusji?

  • Awatar winston baby style dla użytkownika weronika
    Czy można dodawać nowe wartości tablicy na jej początek? Czy istnieje do tego jakaś nowa funkcja działająca jak push tylko że na początek tablicy?
    (4 głosy)
    Awatar Default Khan Academy avatar dla użytkownika
    • Awatar starky tree style dla użytkownika Camasini
      Oczywiście, zerknij na metodę splice()
      Możesz zrobić myFriends.splice(0, 0, "addsomeone"). Pierwsza liczba mówi od którego indeksu zaczynasz, skoro od początku to od 0. Druga liczba jest opcjonalna i mówi ile elementów tablicy chcesz usunąć w tym przypadku żadnego.
      (18 głosów)
  • Awatar blobby green style dla użytkownika Maciej Członka
    Najlepsze blachy to K1DIS
    (0 głosów)
    Awatar Default Khan Academy avatar dla użytkownika
Rozumiesz angielski? Kliknij tutaj, aby zobaczyć więcej dyskusji na angielskiej wersji strony Khan Academy.