Funzione di sonno JavaScript

Funzione di sonno JavaScript

JavaScript è il linguaggio della libertà ma è un linguaggio orientato alla funzione allo stesso tempo. A differenza di altre lingue, JavaScript non fornisce una funzione Sleep () integrata. È possibile creare una funzione Sleep () personalizzata utilizzando la funzione SetTimeout () integrata o l'ultima ECMAScript promette una funzione di ASYNC-ASEWAIT. Questo articolo mostra come fermare o mettere in pausa l'esecuzione della funzione di sonno per la quantità di tempo desiderata usando le promesse o le funzioni di Await.

Prima di cominciare

Prima di iniziare a creare una funzione di sonno, è necessario capire che la funzione setTimeout () non funziona se ti aspetti che interrompa l'esecuzione. Molti programmatori e sviluppatori cercano di utilizzare la funzione con loop ma falliscono perché la funzione setTimeout () viene utilizzata per attendere un determinato periodo di tempo e quindi esegue la funzione data. È possibile, tuttavia, utilizzare la funzione setTimeout () per creare una funzione di sonno usando la promessa se il tuo scopo è di arrestare l'esecuzione per la quantità di tempo desiderata.

Usando la funzione del sonno

Quindi, faremo una funzione di sonno personalizzata in cui la funzione avrà tempo in millisecondi come argomento e restituirà una promessa. La promessa includerà una funzione setTimeout (), che passerà il resolver come funzione e tempo in millisecondi alla funzione setTimeout (). Quindi, alla fine, la funzione del sonno dovrebbe apparire così:

funzione sleep (ms)
restituire new Promise (resolver => setTimeout (resolver, MS));
;

E ora, ovunque tu voglia usare questa funzione del sonno, puoi facilmente usarla.

Ora useremo questa funzione del sonno in un paio di esempi per mostrarti come usarla in pratica.

Innanzitutto, proveremo a consolare un po 'di testo e chiameremo la funzione del sonno. Poiché la funzione di sonno sta restituendo una promessa, dopo di essa, abbiamo messo una funzione poi, in cui consoleremo un po 'di testo e passeremo l'argomento "5000" alla funzione del sonno. Dopo aver eseguito il programma, vedrai nella console che dormirà per 5 secondi.

console.log ("La funzione di sospensione attende 10 secondi e quindi stamperà 'fatto'");
Sleep (5000).Quindi (() =>
console.log ("fatto");
)

Puoi assistere al ritardo di 5 secondi per raggiungere lo stato "fatto" nella console.

Supponiamo di voler eseguire un'animazione ogni 2 secondi. Per fare ciò, scriveremo semplicemente una funzione di animazione asincrona, in cui animeremo qualcosa, fermeremo l'esecuzione per 2 secondi usando il sonno e quindi ripetere questo processo usando un ciclo per 10 volte.

Async Function Animation (MS)
console.log ("Avvio ...");
per (let i = 0; i < 10; i++)
console.log ("animazione dopo 2 secondi ...")
Aspetta il sonno (MS)

console.registro ("Questa è la fine.");

Dopo aver scritto la funzione di animazione asincrona, ora possiamo chiamare la funzione di animazione.

Animazione (2000);

Dopo aver eseguito il codice, vedrai nella console che il testo "Animazione dopo 2 secondi" si ripete ogni due secondi.

Conclusione

Questo articolo ti ha mostrato come fare una funzione di sonno personalizzata, insieme a più dimostrazioni. Spero che questo articolo ti abbia aiutato a capire meglio l'uso della funzione del sonno. Puoi saperne di più su JavaScript su Linuxhint.com.