promise.js is no longer under active development!
December 30, 2013 ยท View on GitHub
jarchibald/ES6-Promises does everything this library was set out to do.
promise.js
A Minimal, fully Promises/A+ compliant library.
Promises/A+ spec here: http://promisesaplus.com/
Usage
promise()- Creates a promise. Can pass an optionalobjargument. If passed, promise methods are attached to passed object.promise.isPromise(obj)- Uses duck-typing to check whether the given object is a 'promise' (does it have athenmethod?)promise.avow(fn)- wrap a function in a promise. Use like so:
var add = promise.avow(function (fulfill, reject, a, b) {
if (a <= 2 && b <= 2) {
fulfill(a + b);
} else {
reject('Math is hard.');
}
});
add(1, 1).then(console.log);
Promise Methods
then(onFulfill, onReject)- bind fulfillment/rejection handlers to the promise. Returns a promise objectfulfill(value)- fulfills the promise with the passed value.reject(reason)- rejects the promise with the passed reason.
For all behaviors, see the spec.

