Проблема в том что вы создаете 1 промис и затем пытаетесь его использовать несколько раз, но этот обьект может быть выполнен или отключен только 1 раз. Можно воспользоваться рекурсией или асинхронной функцией
function exit(n) {
return new Promise(function(resolve) {
setTimeout(() => resolve(n), 1000);
});
}
async function printNumbers() {
for (let i = 1; i <= 10; i++) {
let number = await exit(i);
console.log(number);
}
}
printNumbers();
Рекурсивно
let n = 1;
function exit(n) {
return new Promise(function(resolve, reject) {
setTimeout(() => resolve(n), 1000);
});
}
function outputNumber(n) {
if (n <= 10) {
exit(n).then((num) => {
console.log(num);
outputNumber(num + 1);
});
}
}
outputNumber(n);