a Promise represents an operation that hasn`t completed yet, but is expected in the future
Promise
is a global function
the constructor
- instantiating it without params throws
- expects a function as parameter
simplest promises
- resolve a promise by calling the
resolve
function given as first parameter - the
resolve
function can return a value, that is consumed by thepromise.then()
callback - rejecting a promise is done by calling the callback given as 2nd parameter
an asynchronous promise
- can resolve later, also by calling the first callback
- reject it at some later point in time, calling the 2nd callback
test library (mocha here) support for promises
- just returning the promise makes the test library check that the promise resolves
Links
A well understandable description of the states a promise can be in.