Metodi di iterazione delle stringhe in JavaScript

Metodi di iterazione delle stringhe in JavaScript

In JavaScript, un iteratore di stringa è un metodo che consente di attraversare i caratteri presenti in una stringa. Utilizzando l'iteratore di stringa JavaScript, abilitiamo la stringa aggiunta nel nostro codice per definire il loro comportamento di iterazione personalizzato. Per creare un iteratore di stringa, è possibile utilizzare il javascript incorporato "String @@ Metodo iteratore"O preghiamo l'iteratore stringa definito dall'utente, che può essere creato con l'aiuto di"Generatori".

Questo articolo discuterà i metodi di iterazione delle stringhe in JavaScript. Inoltre, saranno dimostrati anche gli esempi relativi al metodo String @@ iterator e ai generatori JavaScript. Quindi iniziamo!

String @@ iterator Metodo in JavaScript

Il metodo di iterazione stringa in JavaScript consente di iterare sulla stringa aggiunta nel programma. Puoi rendere qualsiasi stringa iterabile implementando il "@@ iterator" metodo. La stringa "@@ iterator"Il metodo restituisce un oggetto iteratore che itera su tutto il codice indicato sulla stringa aggiunta.

IL "String [@@ iterator]"Il metodo è una proprietà JavaScript integrata di una stringa. Chiamando il "@@ iterator"Proprietà stringa, è possibile creare un iteratore di stringa e al posto di"@@ iterator,"Devi utilizzare il"Simbolo.iteratore"Come costante.

Sintassi del metodo dell'iteratore stringa

var iterator = str [simbolo.iteratore] ();

Qui, "iteratore"È il nome per il nostro iteratore di stringhe e la stringa che deve essere iterata è rappresentata come"str".

Utilizzo del metodo String @@ iterator con Next ()

Nel tuo codice JavaScript, puoi ottenere l'oggetto String Iterator usando il metodo "Next ()". Il metodo "Next ()" emette i tasti "Valore" e "fatto", che comprende un valore booleano. Il tasto Valore contiene il valore della chiave corrente. La chiave fatta indica che se il valore è recuperato o meno, con il "vero e falso" valore, dove "VERO"Rappresenta che il processo di iterazione è finito e"falso"Indica che esistono più valori per l'iterazione.

Ora, diamo un'occhiata ad alcuni esempi JavaScript relativi al metodo String @@ iterator.

Esempio 1: usando il metodo String @@ iterator senza loop

Questo esempio ti mostrerà come utilizzare il metodo String @@ iterator nel tuo programma JavaScript per iterare una stringa specifica. A tale scopo, prima di tutto, si stringeremo con 'Mn'Come suo valore:

var str = 'mn';

Nel prossimo passaggio, creeremo un iteratore di stringa per il nostro "str" corda:

var iterator = str [simbolo.iteratore] ();

Se non si desidera utilizzare i loop per l'iterazione, devi invocare il "Prossimo()"Metodo in base alla lunghezza della stringa. Ad esempio, eseguiremo il "iteratore.Prossimo()"Metodo tre volte. Per le prime due volte, il "Fatto"Il valore restituirà falso e quando invoceremo il metodo specificato una terza volta, tornerà"VERO"Poiché l'iterazione è completata e non viene lasciato alcun valore per iterare:

console.registro (iteratore.Prossimo()); // valore: "m", fatto: false
console.registro (iteratore.Prossimo()); // valore: "n", fatto: false
console.registro (iteratore.Prossimo()); // value: undefined, done: true

Dai un'occhiata al codice fornito e al suo output:

Esempio 2: Utilizzo del metodo String @@ iterator con il loop

Puoi anche usare "Loop"Per gestire l'attività ripetuta dell'iterazione della stringa. Voglio sapere come? Se sì, segui l'esempio seguente.

In primo luogo, definiremo una stringa "str"Per il quale vogliamo creare una stringa"iteratore":

const str = 'mnm';
const iterator = str [simbolo.iteratore] ();

Successivamente, assegneremo il valore di "iteratore.Prossimo()"Funzione per la nostra"Thechar"Variabile:

let thechar = iteratore.Prossimo();

Quindi, aggiungeremo un semplice "per loop,"Che eseguirà l'iteratore in base alla proprietà della lunghezza della stringa"str.lunghezza". Per ogni iterazione del ciclo per, il valore chiave e il valore eseguito verranno visualizzati alla finestra della console e "Thechar"Quindi passerà all'iterazione della stringa successiva:

per (let i = 0; i < str.length ;i++)
console.registro (thechar.Valore, TheChar.Fatto);
thechar = iterator.Prossimo();

Ecco l'aspetto completo dell'esempio fornito insieme al suo output:

Esempio 3: usando il metodo String @@ iterator con per ... di loop

Usando il per ... di loop, puoi utilizzare il metodo @@ iterator per iterare sui dati della stringa. Per ogni iterazione per loop per loop, devi chiamare "Next () Metodo.valore"Ai fini dell'iterazione.

Ad esempio, abbiamo definito una semplice stringa con "Mnm"Come valore nel nostro programma JavaScript:

const str = 'mnm';

Nel prossimo passaggio, creeremo un iteratore di stringa per il nostro aggiunto "str" corda:

const iterator = str [simbolo.iteratore] ();

Successivamente, assegneremo il valore dell'iteratore al "Thechar"Variabile, che iterirà il suo valore usando il"Prossimo()"Metodo nel ciclo per:

const iterator = str [simbolo.iteratore] ();

Infine, puoi aggiungere il "per ... di"Loop per iterare il"str"String come segue:

// Utilizzando il loop for-of
console.Log ("Iteterating with For of Loop:")
per (let io di str)

console.log (i)

L'immagine seguente mostra l'output del nostro programma JavaScript:

Generatori in javascript

I generatori sono un'altra funzionalità utile di JavaScript che consente di definire una funzione e quindi utilizzarla per la creazione dell'iteratore di stringa. Questa procedura è meno inclini all'errore e offre un modo efficiente per creare iteratori di stringhe.

Sintassi di generatori

Per utilizzare il generatore nel tuo programma JavaScript, devi seguire la sintassi di seguito:

funzione* ()
cedere "personaggio1"
cedere "personaggio 2"
..

Qui, "*"Indica che stiamo creando una funzione anonima. La parola chiave "prodotto"Viene aggiunto per funzionare l'esecuzione e restituisce l'oggetto iteratore. Dopo averlo fatto, riprenderà di nuovo il suo funzionamento.

Esempio: creazione di iteratore stringa definito dall'utente in JavaScript

In JavaScript, puoi anche creare un Iteratore stringa definito dall'utente utilizzando i generatori. Per fare ciò, prima creare un "mYiterator"Oggetto:

var myiterator = ;

Ora, definisci la funzione del generatore mentre specifichi il punto in cui l'esecuzione si fermerà con "prodotto" parola chiave. Inoltre, quando viene invocata la funzione del generatore, A "chiamato"La stringa verrà visualizzata nella nostra finestra della console:

Myiterator [simbolo.iterator] = function*()
console.log ("chiamato");
cedere "M";
cedere "n";
cedere "O";
;
[… Myaterator];

Dopo questo punto, tutti i valori del campo verranno aggiunti al "mYiterator"Oggetto:

console.log ("campi aggiunti");
console.log (myeterator);

Ecco l'output che abbiamo ottenuto dall'esecuzione dell'esempio sopra dato:

Conclusione

Utilizzando il metodo e i generatori String @@ iterator, è possibile eseguire facilmente il processo di iterazione stringa in JavaScript. Il metodo String @@ iterator implementa il protocollo iteratore, incluso il metodo Next (), che restituisce i caratteri dalla raccolta con un valore di due proprietà e fatti. Considerando che i generatori consentono di creare un metodo di iterazione stringa definito dall'utente in cui è possibile aggiungere il punto di pausa per l'iterazione in base alle tue esigenze. Questo articolo ha discusso dei metodi di iterazione delle stringhe in JavaScript. Inoltre, sono dimostrati anche gli esempi relativi al metodo e ai generatori String @@ iterator.