Metody iteracji strun w JavaScript

Metody iteracji strun w JavaScript

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: false
konsola.dziennik (iterator.Następny()); // wartość: „n”, zrobione: false
konsola.dziennik (iterator.Następny()); // wartość: Undefined, Done: True

Spó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”;
const iterator = Str [symbol.iterator] ();

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++)
konsola.Log (Thechar.wartość, Thechar.zrobione);
thechar = iterator.Następny();

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 Loop
konsola.Log („Iteracja z pętlą:”)
dla (niech i str)

konsola.Log (i)

Poniż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* ()
Wydaj „Charakter 1”
Wydaj „Charakter 2”

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*()
konsola.log („nazywany”);
wydać „m”;
Wydaj „n”;
dawać „o”;
;
[… Myiterator];

Po tym punkcie wszystkie wartości pola zostaną dodane do „Myiterator" obiekt:

konsola.log („pola dodane”);
konsola.log (miiterator);

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 @@.