W JavaScript iterator łańcucha to metoda, która pozwala na przemieszczanie znaków obecnych w ciągu. Korzystając z Iteratora String JavaScript, włączamy ciąg dodany w naszym kodzie, aby zdefiniować ich niestandardowe zachowanie iteracji. Aby utworzyć iterator łańcucha, możesz użyć wbudowanego JavaScript „String @@ Iterator Method”Lub idź do definiowanego przez użytkownika iteratora sznurka, który można utworzyć za pomocą„Generatory".
W tym zapisie omówi metody iteracji ciągów w JavaScript. Ponadto zostaną również wykazane przykłady związane z metodą String @@ iterator i generatory JavaScript. A więc zacznijmy!
String @@ iterator metoda w JavaScript
Metoda iteracji ciągów w JavaScript pozwala iterować nad dodanym łańcuchem w programie. Możesz uczynić dowolny ciąg iteralny, wdrażając „@@ iterator" metoda. Ciąg „@@ iterator”Metoda zwraca obiekt iterator, który iterowuje cały kod wskazany na dodany ciąg.
„„String [@@ iterator]”Metoda to wbudowana właściwość JavaScript ciągu. Nazywając „@@ iterator„Właściwość ciągów, możesz utworzyć iterator sznurka i zamiast„@@ iterator,„Musisz skorzystać z„Symbol.Iterator„Jako stały.
Składnia metody iteratora string
var iterator = Str [symbol.iterator] ();Tutaj, "Iterator”To nazwa naszego iteratora łańcucha, a ciąg, który musi zostać iterowany, jest reprezentowany jako„str".
Za pomocą metody String @@ iterator z następnym ()
W kodzie JavaScript możesz uzyskać obiekt iterator String za pomocą metody „Next ()”. Metoda „Next ()” wyświetla klucze „Wartość” i „gotowe” który obejmuje wartość logiczną. Klucz wartości zawiera bieżącą wartość klucza. Wykonany klucz wskazuje, że jeśli wartość jest pobierana, czy nie, z "prawda i fałsz" wartość, gdzie „PRAWDA”Reprezentuje, że proces iteracji jest zakończony i„FAŁSZ„Oznacza, że istnieje więcej wartości dla iteracji.
Teraz sprawdźmy niektóre przykłady JavaScript powiązane z metodą String @@ iterator.
Przykład 1: Za pomocą metody String @@ iterator bez pętli
Ten przykład pokaże, jak używać metody String @@ iterator w programie JavaScript, aby iterować określony ciąg. W tym celu przede wszystkim będziemy mieć „mając”Mn„Jako jego wartość:
var str = 'mn';W następnym kroku utworzymy iterator sznurka dla naszego „str" strunowy:
var iterator = Str [symbol.iterator] ();Jeśli nie chcesz używać pętli do iteracji, musisz wywołać „Następny()”Metoda zgodnie z długością łańcucha. Na przykład wykonamy „Iterator.Następny()”Metoda trzykrotnie. Przez pierwsze dwa razy „zrobione„Wartość zwróci false, a kiedy wywołamy określoną metodę po raz trzeci, zwróci”PRAWDA”W miarę zakończenia iteracji i nie pozostawia żadnej wartości iteracji:
konsola.dziennik (iterator.Następny()); // wartość: „m”, zrobione: falseSpójrz na dostarczony kod i jego wyjście:
Przykład 2: Za pomocą metody String @@ iterator z pętlą
Możesz także użyć "Pętle„Aby obsłużyć powtarzające się zadanie iteracji ciągów. Chcesz wiedzieć, jak? Jeśli tak, postępuj zgodnie z przykładem poniżej.
Po pierwsze, zdefiniujemy ciąg „str”, Dla którego chcemy utworzyć ciąg”Iterator”:
const str = „mnm”;Następnie przypiszmy wartość „Iterator.Następny()”Funkcja naszego„Thechar" zmienny:
Niech thechar = iterator.Następny();Następnie dodamy proste „dla pętli,„Który wykona iterator zgodnie z właściwością długości ciągów”str.długość". Dla każdej iteracji pętli dla wartości kluczowa i wartość gotowa będą wyświetlane w oknie konsoli i „Thechar„Następnie przejdzie do następnej iteracji ciągu:
dla (niech i = 0; i < str.length ;i++)Oto pełny wygląd podanego przykładu wraz z jego wyjściem:
Przykład 3: Za pomocą metody String @@ iterator z… pętli
Korzystając z pętli, możesz skorzystać z metody @@ iterator, aby iterować dane o łańcuchu. Na każdą iterację z pętlą musisz zadzwonić do „Metoda następny ().wartość”W celu iteracji.
Na przykład zdefiniowaliśmy prosty ciąg, mający „Mnm”Jako jego wartość w naszym programie JavaScript:
const str = „mnm”;W następnym kroku utworzymy iterator sznurka dla naszego dodanego „str" strunowy:
const iterator = Str [symbol.iterator] ();Następnie przypiszmy wartość iteratora do „Thechar„Zmienna, która iteruje jego wartość za pomocą„Następny()„Metoda w pętli:
const iterator = Str [symbol.iterator] ();Na koniec możesz dodać „Dla…„Pętla iterację”str„Ciąg w następujący sposób:
// przy użyciu For-of-of-Of LoopPoniższy obraz obrazu pokazuje wyjście naszego programu JavaScript:
Generatory w JavaScript
Generatory to kolejna pomocna funkcja JavaScript, która pozwala na zdefiniowanie funkcji, a następnie użyć jej do tworzenia iteratora łańcucha. Ta procedura jest mniej podatna na błędy i oferuje wydajny sposób tworzenia iteratorów sznurków.
Składnia generatorów
Aby użyć generatora w programie JavaScript, musisz postępować zgodnie z poniższą składnią:
funkcja* ()Tutaj, "*”Wskazuje, że tworzymy funkcję anonimową. Słowo kluczowe „dawać”Jest dodawany do funkcji wykonania i zwraca obiekt iterator. Po zrobieniu tego ponownie wznowi swoją działalność.
Przykład: Tworzenie definiowanego przez użytkownika iteratora łańcucha w JavaScript
W JavaScript możesz także utworzyć zdefiniowany przez użytkownika iterator ciągów, korzystając z generatorów. Aby to zrobić, najpierw stwórz „Myiterator" obiekt:
var myiterator = ;Teraz zdefiniuj funkcję generatora, określając punkt, w którym wykonanie zatrzyma się z „dawać”Słowo kluczowe. Ponadto, gdy wywoływana jest funkcja generatora, „zwany„Ciąg zostanie pokazany w naszym oknie konsoli:
Myiterator [symbol.iterator] = funkcja*()Po tym punkcie wszystkie wartości pola zostaną dodane do „Myiterator" obiekt:
konsola.log („pola dodane”);Oto dane wyjściowe, które otrzymaliśmy od wykonania powyższego przykładu:
Wniosek
Korzystając z metody i generatorów String @@ iterator, możesz łatwo wykonać proces iteracji String w JavaScript. Metoda String @@ iterator implementuje protokół iteratora, w tym metoda następnego (), która zwraca znaki z kolekcji o wartości i wykonaniu dwóch właściwości. Podczas gdy generatory pozwalają utworzyć metodę iteracji ciągnej zdefiniowanej przez użytkownika, w której można dodać punkt pauzy dla iteracji zgodnie z Twoimi wymaganiami. Ten zapis omówił metody iteracji ciągów w JavaScript. Ponadto pokazano również przykłady związane z metodą i generatory iterator String @@.