Εκκίνηση χρονομέτρησης σε JavaScript
Παρόλο που η συνάρτηση setTimeout δεν προορίζεται
για τη δημιουργία χρονομέτρων, ωστόσο μπορούμε ακόμα
να τα φτιάξουμε με τη βοήθειά της, αν χρησιμοποιήσουμε
αναδρομή:
let i = 0;
function timer() {
setTimeout(function() {
console.log(++i);
timer(); // καλούμε τον εαυτό μας
}, 1000);
}
timer();
Μπορούμε να σταματήσουμε ένα τέτοιο χρονομέτρο απλά δεν αφήνοντας να συμβεί η αναδρομή:
let i = 0;
function timer() {
setTimeout(function() {
console.log(++i);
if (i < 10) { // εκκινούμε, μόνο αν ο μετρητής είναι μικρότερος από 10
timer();
}
}, 1000);
}
timer();
Εμφανίστε στην κονσόλα τον αριθμό 0. Μετά από
ένα δευτερόλεπτο εμφανίστε τον αριθμό 1, μετά από δύο
δευτερόλεπτα εμφανίστε τον αριθμό 2, μετά από 3
δευτερόλεπτα εμφανίστε τον αριθμό 3. Και ούτω καθεξής
στο άπειρο.