Poznaję funkcje seInterval i setTimeout i mam mały problem z bardzo prostym zadaniem. Oto jego treść:
Napisz funkcję ```boilEgg```, która jako argument przyjmie czas w sekundach, a jej wywołanie spowoduje, że po zadanym czasie na konsoli wyświetli się komunikat "jajko ugotowane".
Dodatkowo co 5 sekund, podczas gotowania w konsoli wyświetl napis "jajko się gotuje".
Przetestuj swoją funkcję dla 30 sekund (czas gotowania).
Mój kod póki co wygląda tak:
function boilEgg(seconds) {
setInterval(function() {
seconds -= 5;
if (seconds === 0) {
console.log('jajko ugotowane');
} else {
console.log('jajko się gotuje');
}
}, 5000);
}
boilEgg(30);
I o ile do pewnego momentu funkcja działa prawidłowo, to nie potrafię zrobić, aby po 'jajko ugotowane' przestała się wykonywać. Próbowałem użycia clearInterval, jednak w żadnym miejscu w którym go użyłem nie działał, na przykład:
function boilEgg(seconds) {
setInterval(function boil() {
seconds -= 5;
if (seconds === 0) {
console.log('jajko ugotowane');
clearInterval(boil);
} else {
console.log('jajko się gotuje');
}
}, 5000);
}
boilEgg(30);
Będę wdzięczny za olśnienie mnie, bo jest to z pewnością banalny problem przy którym utknąłem dłuższą chwilę.