Функция должна вызвать колбэк с приветствием через указанную задержку, однако текст выводится без задержки, в чем ошибка, подскажите, пожалуйста

function delayedGreeting(greeting) {
  console.log(greeting + 'пользователь' + '!');
}

setTimeout(delayedGreeting, 5000);
delayedGreeting('Привет, ');


Ответы (1 шт):

Автор решения: UModeL

Задержки нет потому, что Вы после запуска таймера, сразу же вызываете функцию. Потом срабатывает таймер и запускает функцию ещё раз, но уже как сallback и к тому же без аргументов.

Правильно будет так:

function delayedGreeting(greeting) {
  console.log(greeting + 'пользователь' + '!');
}

setTimeout(delayedGreeting, 5000, 'Привет, ');

→ Ссылка