Я пытаюсь понять, как работает цепочка ссылок. Я использую q.js. Здесь я играю.
var Q = require("q"); // npm install q
// the function Q(value) returns a fulfilled promise with the value... I think.
Q(1).then(Q(2)).then(Q(3)).then(Q(4)).then(function(n) {
console.log(n);
});
Q(1).then(function(n) {
return Q(2);
}).then(function(n) {
return Q(3);
}).then(function(n) {
return Q(4);
}).then(function(n) {
console.log("done: " + n);
});
Мой вопрос в основном сводится к тому, почему первый log 1
, в то время как последний регистрирует то, что я ожидаю, и в основном журналы с 1 по 4. Я надеялся, что первый из них будет записывать 4
вместо 1
.
Я действительно просто хотел иметь некоторые методы, которые возвращают promises, а затем объединяют их вместе в водопад, как мода - я думаю, я мог бы использовать async и водопад, но просто хотел знать, может ли это быть достигнуто w/ promises.