Programmeringssprogene som PHP og C har en søvn (sek.) funktion til at pause udførelsen i et bestemt tidsrum. Java har en thread.sleep() , python har time.sleep() , og GO har time.sleep(2*time.second) .
java få aktuel tid
I modsætning til andre sprog har JavaScript ikke nogen søvn() fungere. Vi kan bruge nogle metoder til at simulere søvn() funktion i JavaScript. Funktionerne som f.eks løfter og asynkron/afvent funktion i JavaScript hjalp os med at bruge søvn() fungere på en nemmere måde.
Det vente bruges til at vente på et løfte og kan kun bruges i en asynkron fungere. JavaScripts adfærd er asynkron, så der er et koncept med løfter om at håndtere sådan asynkron adfærd. På grund af denne asynkrone adfærd fortsætter den sit arbejde og venter ikke på noget under udførelsen. Asynkron/vent funktioner hjælper os med at skrive koden på en synkron måde.
Hvordan bruger man søvnfunktionen i JavaScript?
Før implementering af søvnen funktion i JavaScript , er det vigtigt at forstå udførelsen af JavaScript kode.
Syntaks for sleep() i JavaScript
sleep(delayTime in milliseconds).then(() => { // code to be executed })
Sleep()-funktionen kan bruges sammen med async/await for at få pausen mellem udførelsen. Syntaksen for det samme er givet som følger:
Syntaks
const func = async () => { await sleep(delayTime in milliseconds) //code to be executed } fun()
Ovenstående syntakser er måden at implementere søvnfunktionalitet i JavaScript. Nu vil vi se eksemplerne på brug af sleep()-funktionen i JavaScript.
Eksempel 1
I dette eksempel bruger vi søvn() funktion med asynkron/afvent funktionaliteter. Der er en funktion sjovt() er defineret med nogle udsagn. Indledningsvis teksten 'Hej Verden' vises på skærmen, når funktionen er startet. Så på grund af søvnfunktionen sjovt() er sat på pause i 2 sekunder. Efter afslutningen af den givne periode, teksten 'Velkommen til javaTpoint.com' vil blive vist på skærmen og gentaget indtil afslutningen af løkken. Teksten vil blive gentaget 10 gange på skærmen med en pause på to sekunder ved hver iteration af loopet.
<p> There is a sleep of 2000 milliseconds </p> let sleep = ms => { return new Promise(resolve => setTimeout(resolve, ms)); }; document.write('Begin' + ' <br>'); document.write('Welcome to the javaTpoint.com' + ' <br>'); sleep(2000).then(() => { document.write('End'); });Test det nu
Produktion
Efter udførelse af ovenstående kode vil outputtet være -
Efter forsinkelsen på 2 sekunder vil outputtet være -