Metody tablic w JavaScript: ściąga na żywo

Ściąga z metod tablic w JavaScript

Ściąga z metod tablic w JavaScript (uruchom każdą na żywo) | We.Inc

Wpisz własną listę i zobacz, jak działają na niej map, filter, reduce, find, sort, splice i 30 innych metod tablic, z wyraźnym oznaczeniem każdej metody, która zmienia oryginalną tablicę.

Metody tablic dzielą się na dwa obozy. Jedne zmieniają tablicę, na której je wywołujesz, na przykład push, pop, splice, sort i reverse. Inne zwracają nową tablicę lub wartość i nie ruszają oryginału, na przykład map, filter, slice, toSorted i reduce. Edytuj poniższą listę, a każda metoda uruchomi się ponownie na Twoich wartościach.

Codzienne zadania na tablicach i metoda do każdego

Większość ściąg wymienia nazwy metod z jednym gotowym przykładem. Tutaj przykłady działają na liście, którą sam kontrolujesz, więc widzisz, co dzieje się przy duplikatach, pustej liście lub jednym elemencie. Każdy wiersz jest oznaczony, abyś od razu wiedział, czy metoda nadpisuje Twoje dane, co jest źródłem wielu błędów stanu w React i podobnych bibliotekach.

Najczęściej zadawane pytania

Jak sprawdzić długość tablicy w JavaScript?

Odczytaj arr.length. To właściwość, a nie metoda, więc nie ma nawiasów. Jest o jeden większa niż najwyższy indeks, co w zwykłych tablicach równa się liczbie elementów. Ustawienie arr.length = 0 opróżnia tablicę, a ustawienie mniejszej liczby obcina elementy z końca.

Czym różni się map od forEach?

map buduje nową tablicę z tego, co Twoja funkcja zwraca dla każdego elementu, więc możesz ją przypisać lub dołączyć kolejne metody. forEach tylko wywołuje Twoją funkcję i zwraca undefined. Używaj map, gdy chcesz wyniku, a forEach tylko do efektów ubocznych, takich jak logowanie.

Które metody tablic zmieniają oryginalną tablicę?

push, pop, shift, unshift, splice, sort, reverse, fill i copyWithin zmieniają tablicę w miejscu. Bezpośrednie ustawienie length lub indeksu również. Wszystkie pozostałe metody z tej ściągi zostawiają ją nietkniętą.

Jak usunąć element z tablicy bez jej zmieniania?

Użyj filter, aby usunąć po wartości, na przykład arr.filter((x) => x !== 'kiwi'), albo toSpliced(index, 1), aby usunąć po pozycji. Obie zwracają nową tablicę i zostawiają oryginał bez zmian.

Dlaczego map zwraca wartości undefined?

Twój callback niczego nie zwrócił. Funkcja strzałkowa z nawiasami klamrowymi wymaga jawnego return; napisz (x) => x * 2 lub (x) => { return x * 2; }. Brak return daje undefined w tym miejscu.

Czytanie łańcucha od lewej do prawej

Metody wyszukiwania zwracają różne rzeczy

Metody zmieniające tablicę i ich kopiujące odpowiedniki

Gdy nie wolno Ci ruszać oryginału, na przykład stanu React lub argumentu funkcji, zamień lewą kolumnę na prawą.

W miejscu kontra kopia

Łączenie map, filter i reduce

Suma opłaconych zamówień w jednym łańcuchu

Każdy krok zwraca świeżą tablicę, więc następna metoda działa na niej. Oryginalna lista zamówień nigdy się nie zmienia.

Odczyt i ustawianie length

length to zwykła właściwość. Jej zmniejszenie usuwa elementy z końca, dlatego liczy się jako zmiana tablicy.

Aktualizacja stanu React bez mutacji

Metody kopiujące dają React nową tablicę, więc komponent renderuje się ponownie. Wywołanie sort lub push na tablicy stanu by tego nie zrobiło.

Wszystkie

Odczyt

Wyszukiwanie

Przekształcanie

Kolejność

Dodawanie i usuwanie

Iteracja

Ściąga z metod tablic na żywo

Wpisz listę rozdzieloną przecinkami, a każda metoda poniżej uruchomi się na niej w trakcie edycji.

Twoja lista (arr)

Filtruj metody

na przykład find lub sort

Grupa metod

Wszystkie metody z tej ściągi

Widoczne: {n}

Wywołanie

Grupa

Zmienia oryginał?

Co robi

Wynik

Tak

Nie

Błąd: {v}

Zacznij za darmo · Bez karty kredytowej

Powiązane: Poradniki

Produkt

Dla kogo

Funkcje

Zasoby

Firma

Mapa strony