Promises are used for asynchronous code. It is a temporary holder for a value that gets returned by an asynchronous call. For example, a call to a web service might use a promise. You can call the web service with a promise and once it is fulfilled, you can run some code. Here is the syntax…
let myPromise = new Promise(
function(resolve, reject){
setTimeout(resolve, 1000, ‘a value’);
}
);
console.log(myPromise);
Here we are creating a promise. Within the promise method, we have an anonymous function that is making the promise call. In here is where you might find a call to a web service. In our example, we are simply running a setTimeout function to simulate a call to a service that might take a second. Notice the two parameters in the function…resolve and reject. Those are the two things that can happen to a promise. It can be rejected. We can then handle the rejection, or it can be resolved (fulfilled). This settles the promise and we can programmatically handle the response.
In our code, you should see the promise logged to the console. It is in a pending state because we haven’t settled it. We haven’t done anything with it yet. Feel free to change the resolve to reject in the setTimeout to see the difference.
Happy Coding!
Clay Hess