Js - Временная остановка цикла For
Есть цикл, который при каждой создаёт кнопку. При нажатии на кнопку вызывается таймер на определённое время, выбранное пользователем. Надо чтобы до нажатия кнопки и окончания таймера цикл временно прекращал работу. Для наглядности, вот упрощённая версия кода:
function startExercise() {
for(let i = 0; i < ec; i++) {
for(let j = 0; j < storage.getItem('ic' + i); j++) {
let nBtn = document.createElement('button');
nBtn.className = 'exercise-btn';
nBtn.onclick = function() { startTimer(storage.getItem('tm0')) };
document.getElementById('container').appendChild(nBtn);
}
}
}
function startTimer(time) {
let nTime = document.createElement('p');
nTime.className = 'timer';
document.getElementById('container').appendChild(nTime);
let sec = 0;
let min = time;
function updateTimer() {
if(sec < 0) {
sec = 59;
min--;
}
nTime.innerHTML = min + ':' + (sec < 10 ? '0' : '') + sec;
setTimeout(updateTimer, 1000, --sec);
}
updateTimer(time);
}