https://github.com/potch/promise.js
No longer under active development!
https://github.com/potch/promise.js
Last synced: about 1 year ago
JSON representation
No longer under active development!
- Host: GitHub
- URL: https://github.com/potch/promise.js
- Owner: potch
- Created: 2013-07-09T22:45:40.000Z (almost 13 years ago)
- Default Branch: master
- Last Pushed: 2013-12-30T00:12:54.000Z (over 12 years ago)
- Last Synced: 2025-04-30T06:07:47.353Z (about 1 year ago)
- Language: JavaScript
- Homepage: https://github.com/jakearchibald/ES6-Promises
- Size: 145 KB
- Stars: 11
- Watchers: 2
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# promise.js is no longer under active development!
[jarchibald/ES6-Promises](https://github.com/jakearchibald/ES6-Promises) does everything this library was set out to do.
# promise.js
[
](http://promisesaplus.com/)
A Minimal, fully Promises/A+ compliant library.
Promises/A+ spec here: http://promisesaplus.com/
[](https://travis-ci.org/potch/promise.js)
# Usage
* `promise()` - Creates a promise. Can pass an optional `obj` argument. 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 a `then` method?)
* `promise.avow(fn)` - wrap a function in a promise. Use like so:
```js
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 object
* `fulfill(value)` - fulfills the promise with the passed value.
* `reject(reason)` - rejects the promise with the passed reason.
For all behaviors, see the [spec](http://promisesaplus.com/ "Promises/A+ Specification").