Timer
Es gibt zwei Arten von Timern: setTimeout
und setInterval
.
setTimeout()
-Methode
setTimeout()
-MethodeDie setTimeout()
-Methode führt Code in der Zukunft aus. Die Methode verlangt zwei Argumente: eine Callback-Funktion, die aufgerufen wird und eine Zeit in ms.
Das zweite Argument bestimmt, wann die Callback-Methode aufgerufen wird.
setTimeout(() => console.log('Here is your pizza 🍕'), 3000);
So wird z.B. diese Methode nach 3s oder eben 3000ms aufgerufen.
Argumente mitgeben
Um der Callback-Methode Argumente mitzugeben, müssen wir sie nach dem timeOut
-Argument angeben:
setTimeout(
(ingredients, type) => {
console.log(
`Here is your ${type} with ${ingredients.join(' and ')} ${type === 'pizza' ? '🍕' : ''}`
);
},
3000,
['olives', 'spinach'],
'pizza'
);
Timer abbrechen
Wir haben auch die Möglichkeit den Timer abzubrechen, wenn etwas Bestimmtes passiert. Dafür nutzen wir die Methode clearTimeout()
:
const ingredients = ['olives', 'spinach'];
const pizzaDelivery = setTimeout(
(ingredients, type) => {
console.log(
`Here is your ${type} with ${ingredients.join(' and ')} ${type === 'pizza' ? '🍕' : ''}`
);
},
3000,
ingredients,
'pizza'
);
if (ingredients.includes('spinach')) {
clearTimeout(pizzaDelivery);
}
Falls die Pizzazutaten Spinat enthalten, wird die Bestellung abgebrochen, da die Pizzeria keinen Spinat mehr über hat.
setInterval()
-Methode
setInterval()
-MethodeDie setInterval()
-Methode ruft eine Callback-Funktion in regelmässigen Abständen auf, z.B. 1 Sekunde oder 10 Minuten. Die Syntax ist gleich, wie bei der setTimeout()
-Methode: eine Callback-Funktion, eine Zeit in ms und allenfalls Argumente für die Callback-Funktion.
const clock = setInterval(() => {
const now = new Date();
console.log(
new Intl.DateTimeFormat('de-CH', { timeStyle: 'medium' }).format(now)
);
}, 1000);
Mit der setInterval()
-Methode können wir so z.B. eine Uhr bauen.
Zuletzt aktualisiert