Задержка выполнения в Node.js: setTimeout, setInterval, Promises и async/await

Чтобы отложить выполнение в Node.js, вы можете использовать различные методы. Вот некоторые часто используемые методы:

  1. setTimeout(): функция setTimeout() позволяет выполнить функцию обратного вызова после указанной задержки в миллисекундах. Например, чтобы задержать выполнение на 2 секунды, вы можете использовать:
setTimeout(() => {
  // Code to be executed after the delay
}, 2000);
  1. setInterval(): функция setInterval() неоднократно выполняет функцию обратного вызова с указанной задержкой между каждым выполнением. Вы можете использоватьclearInterval(), чтобы остановить выполнение. Вот пример:
const intervalId = setInterval(() => {
  // Code to be executed repeatedly after the delay
}, 1000);
// To stop the execution after a certain time:
setTimeout(() => {
  clearInterval(intervalId);
}, 5000);
  1. Обещания с помощью setTimeout(): вы можете использовать обещания для более структурированной задержки выполнения. Вот пример использования промисов с setTimeout():
const delay = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
delay(3000).then(() => {
  // Code to be executed after the delay
});
  1. async/await с setTimeout(): если вы используете Node.js версии 8 или выше, вы можете использовать синтаксис async/await для задержки выполнения. Вот пример:
const delay = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
async function delayedExecution() {
  // Code before the delay
  await delay(2000);
  // Code to be executed after the delay
}
delayedExecution();