promiz
v1.0.6
Published
A proper compact promise (promises/A+ spec compliant) library.
Downloads
5,050
Maintainers
Readme
Bower
bower install promiz --save
```html
<!-- Browser -->
<script src='promiz.js'></script>
Promiz - 913 bytes (min + gzip) - as reported by uglify.js
Promiz
Constructor - new Promise(Function<resolve, reject>)
var promise = new Promise(function (resolve, reject) {
if ('itIsRaining' && Math.random() * 10 === 2) {
reject(new Error('reason'))
} else {
resolve(42)
}
})
Promise.reject({reason})
promise = Promise.reject(new Error('reason'))
Promise.resolve({value})
promise = Promise.resolve(42)
promise.then({Function}, {Function})
promise = Promise.resolve(42)
promise.then(function (success) {
return 'Promise resolved to: ' + success
}, function (failure) {
return 'Promise failed with: ' + failure
})
promise.catch({Function})
promise = Promise.reject(new Error('failure'))
promise.catch(function (failure) {
return 'Promise failed with: ' + failure
})
Promise.all({iterable})
promise1 = Promise.resolve(1)
promise2 = Promise.resolve(2)
Promise.all([promise1, 123, promise2])
.then(function (promises) {
promises[0] === 1
promises[1] === 123
promises[2] === 2
})
Promise.race({iterable})
promise1 = new Promise()
promise2 = new Promise()
setTimeout(function () {
promise1.resolve('z')
}, 10)
setTimeout(function () {
promise2.resolve('l')
}, 100)
Promise.race([promise1, promise2])
.then(function (winner) {
winner === 'z'
})