JS - Promises - Basic usage

by Zacc206

HTML

<div id="console-log"></div>

JavaScript

console = {
    log: function (text) {
    		var consoleLine = document.createElement('p');
    		consoleLine.innerHTML = text;
        document.getElementById("console-log").appendChild(consoleLine);
    }
};

var delayPromise = 2000; // in milliseconds

// Create new Promise
var promise = new Promise(function(resolve, reject){
  setTimeout(function(){
    // Flip a coin
    var rand = Math.floor(Math.random() * 2);
    if(rand){
      resolve('You won the coin toss.');
    } else {
      reject('You lost the coin toss :(');
    }
  }, delayPromise);
});

// Synchronous evt 1
console.log('Real-time event 1');

// Async evt
promise.then(function(response){
  console.log(response);
}, function(error){
  console.log(error);
});

// Synchronous evt 2
console.log('Real-time event 2');