@we_man1: Såhär
https://jsfiddle.net/g0L2acvx/
function display(str) {
let $numbers = document.getElementById('numbers');
let $div = document.createElement('div');
$div.append(str);
$numbers.append($div);
}
function runAll(numbers) {
if (numbers.length > 0) {
return new Promise((resolve, reject) => {
let nr = numbers.shift();
display(nr);
setTimeout(() => resolve(), 500);
}).then(() => runAll(numbers));
} else {
return Promise.resolve();
}
}
let numbers = [0, 1, 2, 3, 4, 5];
return runAll(numbers).then(() => {
alert('Klart');
});
Hoppas det går lättare att läsa; så har du reject där med ifall du vill säga att något blev fel.
Värt att poängtera att har du stora arrayer så är det onödigt att leta efter diven med "numbers" varje gång; hade lyft ut den i stället.
Sedan ska du ha stringify precis som @Alling skrev.