Notes on Javascript Promises
Promises are not to be broken.
Collection of notes which trip me up when creating Javascript promises within Ajax requests.
Looping over an array to perform ajax requests, which are wrapped into promises:
https://stackoverflow.com/questions/36664272/promise-for-loop-with-ajax-requests
The above creates an additional method on the javascript built-in Promise
object adding a "thenReturn" method:
Promise.prototype.thenReturn = function(value) {
return this.then(function() {
return value;
});
};
The return value maintains the index of the iteration. Note that their Ajax call (follow kink above) returns a promise. This is important, because:
"Whenever you create a promise in a then, return it - any promise you don't return will not be waited for outside." src
Thus, when using the .then()
syntax, check to make sure that your asynchronous code is returning a promise, otherwise the the code will not wait for a promise (because there isn't one!). Solution: Make sure your asynchronous operations (such as an Ajax request) actually return a promise if you're wanting to wait upon it.