#middle
#js
#задача
Задача:
• Вывести значения переменной i в консоль.
• Между выводами должна быть задержка в 1 секунду.
• Вывод должен отображать значение переменной на каждой итерации.
• Для решения задачи код можно менять только в теле цикла.
Пример кода:
for (let i = []; i.length < 3; i.push(1)) {
// ваше решение
}
Решение:
for (let i = []; i.length < 3; i.push(1)) {
const newI = [...i]
setTimeout(() => console.log(newI), i.length * 1000);
}
Примечание:
Если написать просто setTimeout с console.log(i), то в консоли появится 3 одинаковых значения. Это происходит потому, что ко времени срабатывания тайм-аута, цикл уже отработает.
Для решения задачи мы создаём локальную переменную и копируем значения из i (если не скопировать, то newI будет меняться вместе с i из-за того что массив -
ссылочный тип)
Чтобы вывести значения с интервалом в секунду, нужно использовать длину массива i:
i.length * 1000
Web Interview