Skip to content

Commit 191403a

Browse files
Merge pull request then#80 from then/add-finally
add Promise#finally
2 parents 3abad71 + ddc3b82 commit 191403a

File tree

2 files changed

+18
-1
lines changed

2 files changed

+18
-1
lines changed

index.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,5 +2,6 @@
22

33
module.exports = require('./lib/core.js')
44
require('./lib/done.js')
5+
require('./lib/finally.js')
56
require('./lib/es6-extensions.js')
6-
require('./lib/node-extensions.js')
7+
require('./lib/node-extensions.js')

lib/finally.js

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
'use strict';
2+
3+
var Promise = require('./core.js')
4+
5+
module.exports = Promise
6+
Promise.prototype['finally'] = function (f) {
7+
return this.then(function (value) {
8+
return Promise.resolve(f()).then(function () {
9+
return value
10+
})
11+
}, function (err) {
12+
return Promise.resolve(f()).then(function () {
13+
throw err
14+
})
15+
})
16+
}

0 commit comments

Comments
 (0)