Jeśli chcesz dodać natywną funkcjonalność iteracyjną do dobrze zakapowanej i niestandardowej struktury danych, powinieneś użyć iteratorów JavaScript. Można to uznać za bardziej elegancki sposób standaryzacji niestandardowych obiektów.
W tym spisie omówi iteratorzy W JavaScript. Wykazamy również użycie iteratorów, iterables, metodę nowej () i iteratorów zdefiniowanych przez użytkownika. A więc zacznijmy!
Iteracja w JavaScript
W JavaScript, Iteracja jest procedurą, w której zbiór struktur lub instrukcji jest powtarzany w sekwencji dla z góry określonej liczby razy lub do momentu, gdy dodany warunek będzie prawdziwy. Możesz użyć Pętle do iteracji nad określonym zestawem instrukcji.
Na przykład zadeklarowaliśmy tablicę „rachunkowość”I z pomocą„Dla…„Pętla, będziemy iterować określoną tablicę:
Const Counting = [1, 2, 3];W wyniku tego każda wartość zostanie zwrócona i pokazana jako wyjście:
Teraz sprawdźmy metodę iteracji obiektu JavaScript. W tym celu po pierwsze, zadeklarujemy obiekt o nazwie „pracownik”A następnie wykorzystaj Dla… pętla do iteracji nad jego właściwościami:
const pracownik = nazwa: „Alex”, określenie: „menedżer”;Jak widać, dane wyjściowe powyższego kodu wyświetlało „Typeerror”Wiadomość, która stwierdza, że„pracownik„Obiekt nie jest Iterable. Dlaczego tak się dzieje? Spotkaliśmy typeerror, ponieważ Dla… pętli wymaga iteracyjnego obiektu do iteracji nad właściwościami obiektu.
Aby poradzić sobie z obecną sytuacją, możesz użyć protokołu iteracji JavaScript, który pomoże ci w tworzeniu obiektu do iteracji nad jego właściwościami.
Protokół iteracji JavaScript
JavaScript zapewnia protokół iteracji do iteracji nad obiektami. Ten protokół określa procedurę iteracji za pomocą „za… pętla. Iteratory JavaScript są podzielone na dwa elementy: „Iterable" I "Iteratorzy”:
Na pierwszy rzut oka może być trudno zrozumieć użycie tych metod, więc sekwencyjnie przejdziemy przez każdą z nich w poniżej podanych sekcjach.
Metoda następny () w JavaScript
"Następny()”To metoda obiektu iteratora, która jest wywoływana do zwrócenia następnej wartości w sekwencji iteracji. Ta metoda obejmuje następujące dwie właściwości:
Zdefiniujmy niestandardowy iterator w JavaScript i uzyskaj dostęp do elementów tablicy sekwencyjnie za pomocą metody Next ().
Tworzenie iteratora zdefiniowanego przez użytkownika w JavaScript
JavaScript pozwala utworzyć iterator zdefiniowany przez użytkownika i wywołać „Następny()„Metoda dostępu do elementów obiektu iteracyjnego.
Tutaj zdefiniowaliśmy „Showelement ()„Metoda i zwróci„ ”wartość" I "zrobione„Własność iterowalnego obiektu, który jest akceptowany jako argument:
funkcja pokazuje (ARR)W następnym kroku stworzymy „szyk”A następnie przekazuj to„Showelement ()„Metoda jako argument. A później "ShowElements ()„Metoda zwróci obiekt iteracyjny, do którego będziemy przechowywać„Arriterator”:
const array = [„l”, „i”, „n”, „u”, „x”];Teraz, za każdym razem, gdy „Następny()„Metoda jest wywoływana z„Arriterator”, Wyświetli wartości elementu tablicy w sekwencji z zdefiniowaną„wartość" I "zrobione" nieruchomości:
konsola.log (arterator.Następny());Kiedy wszystkie elementy są iterowane, „wartość„Wartość właściwości zostanie ustawiona na„nieokreślony", z "zrobione„Nieruchomość jako„PRAWDA”:
Powyższe dane wyjściowe oznacza, że pomyślnie utworzyliśmy i wykonaliśmy iterator zdefiniowany przez użytkownika w naszym programie za pomocą metody Next (). Teraz zrozummy również koncepcję iterablesów i miej jasne i głębokie zrozumienie Symbol.iterator () W JavaScript
Przykład: Tworzenie iteratorów z iterables za pomocą symbolu.metoda iterator () w JavaScript
W tym przykładzie po pierwsze, zadeklarujemy tablicę z następującymi trzema wartościami:
Następnie przywojemy „Symbol.iterator ()„Metoda, która zwróci iteralny obiekt i„Arriterator„Zabezpieczy swoją wartość:
const arriterator = arr1 [symbol.iterator] ();Wykonanie powyższego programu wyświetli iteratory tablicy:
Przykład: za pomocą metody Next () przez iterabalny obiekt w JavaScript
Ten przykład pokaże użycie „Następny()„Metoda iteracji nad iteralnym obiektem. Aby to zrobić, po pierwsze, stworzymy „szyk”A następnie wywołać„Symbol.iterator ()„Metoda zwracania obiektu iterowalnego:
Wywołując „Następny()”Zwróci również obiekt o„wartość" I "zrobione" wartości nieruchomości:
konsola.log (arterator.Następny());Na końcu sekwencji iteracji „zrobione„Własność„ „Następny()„Metoda jest ustawiona na„FAŁSZ”:
Przykład: Iteracja za pomocą iterables z pętlą w JavaScript
symbol.iterator () Metoda jest automatycznie wywoływana przez… pętli. Jeśli chcesz to wywołać ręcznie, możesz użyć „chwila”Pętla do iteracji nad określonym obiektem iterabinem.
Na przykład, w poniższym przykładzie, użyjemy „chwila„Pętla do iteracji nad iterowalnymi obiektami zwróconymi przez„Symbol.iterator ()" metoda:
const array = [„l”, „i”, „n”, „u”, „x”];Tutaj wyjście pokazuje zwrócony wynik z „wartość" I "zrobione„Właściwości iteratora:
Spójrz na poniższy schemat, aby zrozumieć związek między iterablesami, metodą Next () i iteratorami w JavaScript:
Chodziło o podstawowe użycie iteratorów w JavaScript. Możesz go dalej odkrywać zgodnie z preferencjami.
Wniosek
Iteratory w JavaScript są wykorzystywane do zapętlania nad sekwencją wartości obiektów zwróconych przez symbol.Metoda iterator (). Proces ten obejmuje również wdrożenie metody następnej (), która zwraca obiekt o wartości i właściwościach wykonanych, gdzie „wartość”Reprezentuje bieżącą wartość sekwencji i„zrobione”Określa, czy iteracja jest zakończona, czy nie. W tym spisie omówiono iteratory JavaScript za pomocą odpowiednich przykładów.