请教node.js中promise的使用方法

雨中的月儿 2015-10-09 06:55:16
代码如下:

var _ = require("./underscore");

var arr = [1,2,3,4,5];
var startPromise = new Promise(function(resolve, reject) {
resolve(1000);
});

var chainPromise = startPromise;

var startDate = Date.now();
_.each(arr, function (val) {
chainPromise = chainPromise.then(function(ret) {
console.log("No." + val + ", " + ret);
return startPromise;
});
});
var timeSpan = new Date() - startDate;
console.log("Finished , " + timeSpan + "ms");



我期望的输出结果是:
No.1, 1000
No.2, 1000
No.3, 1000
No.4, 1000
No.5, 1000
Finished , 1ms

但实际的结果是:
Finished , 1ms
No.1, 1000
No.2, 1000
No.3, 1000
No.4, 1000
No.5, 1000

请教高手,我的代码如何修改,才能达到我想要的结果?
...全文
168 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

87,907

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧