• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Szukam odpowiednika funkcji Sleep() z C++ w czystym JS.

Cloud VPS
0 głosów
715 wizyt
pytanie zadane 3 września 2018 w JavaScript przez HAQ Początkujący (270 p.)
Chciałbym wstrzymać wykonywanie skryptu JS na 1s. Jak to zrobić? Proszę o przykłady.

2 odpowiedzi

0 głosów
odpowiedź 3 września 2018 przez adrian17 Mentor (354,720 p.)

Nie ma bezpośrednio czegoś takiego. Możesz albo:

- użyć setTimeout, żeby wywołać nową funkcję po sekundzie

function func() {
	console.log("1");
	setTimeout(function() {
		console.log("2"); // po 2s
	}, 2000);
}

- użyć funkcje asynchroniczne - wciąż używają setTimeout pod spodem, ale sama funkcja wygląda jak "zwykły" sleep().

// jednorazowy boilerplate
function sleep(ms) { return new Promise(resolve => setTimeout(resolve, ms)); }

async function func() {
	console.log("1");
	await sleep(2000);
	console.log("2"); // po 2s
}

 

0 głosów
odpowiedź 3 września 2018 przez Comandeer Guru (607,100 p.)

To zależy, co rozumiesz pod "wstrzymać wykonywanie". Sposób podany przez adrian17 niczego nie wstrzymuje, po prostu odczekuje zadaną ilość czasu pomiędzy kolejnymi wywołaniami. Faktycznego wstrzymania wykonywania całego programu nie da się zrobić – chyba że nieskończoną pętlę na kilka sekund uważasz za prawidłowe rozwiązanie ;)

Podobne pytania

0 głosów
1 odpowiedź 267 wizyt
0 głosów
1 odpowiedź 311 wizyt
pytanie zadane 27 marca 2016 w C i C++ przez niezalogowany
+1 głos
1 odpowiedź 741 wizyt
pytanie zadane 19 kwietnia 2021 w JavaScript przez Nabuchadonozor Gaduła (3,120 p.)

93,488 zapytań

142,421 odpowiedzi

322,772 komentarzy

62,906 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Kursy INF.02 i INF.03
...