I just started reading about Promise/A+ and wanted to try it for myself.
I added multiple then()
callbacks and this behavior was surprising.
1) Chaining the then doesn't return the same promise
> new Promise(function(a, r) {a('hello')}).
then(function(r) { console.log('1', arguments) }).
then(function(r) { console.log("2", arguments) })
1 ["hello"]
2 [undefined]
2) Not-chaining works as I expected
> p = new Promise(function(a, r) {a('hello')});
p.then(function(r) { console.log('1', arguments) });
p.then(function(r) { console.log("2", arguments) })
1 ["hello"]
2 ["hello"]
What is the use case for scenario #1?