nodejs 异步promise用法
Promise提供了一种异步执行模式。
注意一点Promise的执行仍然是异步方式的,并没有改变成同步执行模式,只不过让代码写起来读起来像是同步执行一样。
在node.js中,回调函数的多重嵌套可能会导致代码难以维护。因此,我们借助Promise来封装异步函数,
使用统一的链式API来避免函数不断的嵌套匿名函数,脱离这多重回调的麻烦,使代码可读性更强。
简单来说,Promise就是把函数的嵌套改成了并列,使其代码更友好。
Promise对象一般有三种状态:Pending(未完成),Fulfilled(操作成功),Rejected(操作失败)
function pick(){
var p=new Promise((resolve,reject)=>{
setTimeout(()=>{
console.log('挑拣完成',new Date());
resolve();
},500);
});
return p;
}
function groundMouth(){
var p=new Promise((resolve,reject)=>{
setTimeout(()=>{
console.log('磨口完成',new Date());
resolve();
},400);
});
return p;
}
function blow(){
var p=new Promise((resolve,reject)=>{
setTimeout(()=>{
console.log('吹气完成',new Date());
resolve();
},300);
});
return p;
}
function PEbag(){
var p=new Promise((resolve,reject)=>{
setTimeout(()=>{
console.log('已套PE袋',new Date());
resolve();
},200);
});
return p;
}
function pack(){
var p=new Promise((resolve,reject)=>{
setTimeout(()=>{
console.log('装箱结束',new Date());
resolve();
},100);
});
return p;
}
pick()
.then(function(data){
return groundMouth();
})
.then(function(data){
return blow();
})
.then(function(data){
return PEbag();
})
.then(function(data){
return pack();
})
相信坚持的力量,日复一日的习惯.
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)
2018-06-21 查看当前文件夹下所有的文件内容的匹配