syncIterator

sync iteration of list of async functions

by evgkch

JavaScript

const field = Array.from({ length: 5 }, (v, k) => () =>
	new Promise(resolve =>
  	setTimeout(() => resolve(k), 250)
  )
);

const syncIterator = async ([firstFn, ...restFns]) => {
	if (typeof firstFn === 'function') {
  	console.log(await firstFn());
  };	
	if (restFns.length > 0) {
  	await syncIterator(restFns);
  };
};

syncIterator(field)