Promise with timeout

by Vatsal Pande

JavaScript

function isPrime(num) {
  for ( var i = 2; i < num; i++ ) {
    if ( num % i === 0 ) {
      return false;
    }
  }
  return true;
}


function returnPromiseValue(value) {
  return new Promise(resolve => setTimeout(() => resolve(value), value*5))
}


function display(n) {
  const arr = [returnPromiseValue(2)];
  for (var i = 3; i < n; i += 2) {
    if (isPrime(i)) {
        arr.push(returnPromiseValue(i));
      }
  }
  return arr;
}

  Promise.all(display(100)).then(data => {
    console.info ('---- Inside success response ---');
    console.info(data);
    console.info ('-------------------------------');
  }).catch(err => {
    console.error(err.message);
  })