JSFiddle - React, Tailwind, and code Playground

by joplomacedo

HTML

<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.15/lodash.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.15/lodash.min.js"></script>

JavaScript

let str = '';
let arr = [2,3,4,5,6];

let innerPromise = function () {
	return new Promise( (resolve, reject) => {
		setTimeout( () => {
			str+='-a';
			resolve(str)
		}, 3000)
	})
};

let promise = new Promise( (resolve, reject) => {

	(async function () {
		while ( arr.length ) {
			const val = await innerPromise();
			console.log(val);
			arr.shift();
		}

	})();
	
})

promise.then( res => {
	console.log(res)
})