JavaScript – Pozastavení spuštění nebo ekvivalent funkce spánku

JavaScript neobsahuje funkci spánku pro pozastavení provádění – ale pomocí tohoto jednoduchého kódu můžete dosáhnout stejného efektu.

Na rozdíl od shellových skriptů a PHP neobsahuje JavaScript vestavěnou funkci pro pozastavení provádění na nastavenou dobu.

V jiných programovacích jazycích se tomu obvykle říká spánek funkce. JavaScript bohužel nemá ekvivalentní funkci, ale můžeme si ji vytvořit sami!

JavaScriptové sliby

Moderní verze JavaScriptu zahrnují podporu nové funkce zvané sliby .

Jednoduše řečeno; slib je nový druh objektu, který může funkce vrátit, když skutečný výsledek funkce ještě není připraven – je to příslib, že výsledek je na cestě. Když se dostaví výsledek, příslib je vyřešen a hodnotu lze použít (nebo lze vyřešit jakoukoli výslednou chybu).

Znamená to, že už nemusíte čekat na dokončení funkce, než budete moci udělat něco jiného – váš program pokračuje a příslib běží asynchronně, dokud nebude dokončen.

JavaScript čeká

 čekání operátor počká na vyřešení příslibu, než bude pokračovat, místo aby umožnil vašemu programu pokračovat a pokračovat v provádění, dokud se příslib vyřeší.

Funkce JavaScript setTimeout()

 setTimeout() Funkce vykonává funkci po určité době definované v milisekundách. Níže uvedený kód vytiskne zprávu do konzole po 1sekundové prodlevě:

setTimeout(console.log('hello'), 1000);

Kombinace await() , Promise a setTimeout() do pozastavení/spánku

Takže, když to všechno stojí v cestě, zde je návod, jak pozastavit spouštění aplikace JavaScript:

await new Promise(resolve => setTimeout(resolve, 3000));

čekat se používá k čekání na výsledek nového Slibu , který je nastaven tak, aby se vyřešil po daném počtu milisekund (v tomto případě 3000).

Aby to bylo možné provést na jediném řádku kódu namísto na více řádcích, používá se výraz funkce šipky.

A je to – pokud chcete pozastavit nebo uspat aplikaci JavaScript během spouštění, umístěte řádek tam, kde je potřeba, a upravte načasování tak, aby vyhovovalo!