var fs =require('fs')

fs.readFile('./a.txt', 'utf8',function(err,data){

if(err){

console.log('读取失败')

}else{

console.log(data)

fs.readFile('./b.txt', 'utf8',function(err,data){

if(err){

console.log('读取失败')

}else{

console.log(data)

fs.readFile('./c.txt', 'utf8',function(err,data){

if(err){

console.log('读取失败')

}else{

console.log(data)

}

})

}

})

}

})

var fs =require('fs')

var p1 =new Promise(function(resolve,reject){

fs.readFile('a.txt','utf8',function(error,data){

if(error){

reject()

console.log('读取失败')

} else{

resolve(data)

}

})

})

var p2 =new Promise(function(resolve,reject){

fs.readFile('./b.txt','utf8',function(err,data){

if(err){

reject()

console.log('读取失败')

}else{

resolve(data)

}

})

})

var p3 = new Promise(function(resolve,reject){

fs.readFile('./c.txt','utf8',function(err,data){

if(err){

reject()

console.log('读取失败')

}else{

resolve(data)

}

})

})

p1.then(function(data){

console.log(data)

return p2

},function(err){

console.log('读取失败')

}).then(function(data){

console.log(data)

return p3

},function(err){

console.log('读取失败')

}).then(function(data){

console.log(data)

},function(err){

console.log('读取失败----------')

})

var fs =require('fs')

function readFireFun(url){

return new Promise(function(resolve,reject){

fs.readFile(url,'utf8',function(err,data){

if(err){

console.log('读取失败')

reject(err)

}else{

console.log(data)

resolve(data)

}

})

})

}

readFireFun('./a.txt').then(function(data){

return readFireFun('./b.txt')

}).then(function(data){

return readFireFun('./c.txt')

})

使用promise解决回调地狱_回调地狱的由来和如何利用promise解决回调地狱相关推荐

  1. promise链式调用_这一次,彻底弄懂 Promise

    Promise 必须为以下三种状态之一:等待态(Pending).执行态(Fulfilled)和拒绝态(Rejected).一旦Promise 被 resolve 或 reject,不能再迁移至其他任 ...

  2. 创业冲突的五种解决方法是_当合伙人发生冲突时,最好的解决办法是什么?

    原标题:当合伙人发生冲突时,最好的解决办法是什么? 本文来源于微信公众号:经纬创投 微信ID:matrixpartnerschina 创业是一段漫长的旅程.费尽力气,在茫茫人海中寻找合乎自己想象的合伙 ...

  3. 单行溢出隐藏没生效_溢出隐藏:最全的利用css解决内容溢出问题的几种方案

    在p布局中,有的文字内容多了会超过溢出我们限制的高度,有的图片会撑破DIV,让网页错位变乱.内容溢出了容器,超出了容器所限定的宽度和高度应该怎么办呢?可以将文本溢出部分进行隐藏或者用省略号代替,那具体 ...

  4. 使用promise解决回调地狱_「每日一题」Promise 是什么?

    window.Promise 已经是 JS 的一个内置对象了. 1. Promise 有规格文档吗? 2. 你一般如何使用 Promise. ----------- 目前的 Promise 都遵循 P ...

  5. 使用promise解决回调地狱_使用Promise 解决回调地狱

    const fs = require('fs') function getFileByPath(fpath) { return new Promise(function (resolve, rejec ...

  6. 解决异步问题,教你如何写出优雅的promise和async/await,告别callback回调地狱!

    解决异步问题--promise.async/await 一.单线程和异步 1.单线程是什么 2.为什么需要异步 3.使用异步的场景 二.promise 1.promise的三种状态 2.三种状态的表现 ...

  7. bootstraptable 加载完成回调函数_牛皮了!头一次见有大佬把「JavaScript中的回调函数」详解得如此清晰明了...

    前言 callback,大家都知道是回调函数的意思.但是你对这个概念应该是模模糊糊.比如Ajax,你只知道去调用返回函数,如果对callback没有理解清楚,估计你在学习Node.js后会崩溃,因为c ...

  8. android 等待回调再返回结果_震惊!!只剩你还不懂Java回调机制了!

    点击上方 Java项目学习 ,选择 星标 公众号 重磅资讯.干货,第一时间送达 来源:22j.co/cFPf 调用和回调机制 在一个应用系统中, 无论使用何种语言开发, 必然存在模块之间的调用, 调用 ...

  9. python回调接口_三个案例带你了解python回调函数

    原标题:三个案例带你了解python回调函数 回调函数: 把函数的指针(地址)作为参数传递给另一个函数,当这个指针被用来调用其所指向的函数时,我们就说这是回调函数.回调函数不是由该函数的实现方直接调用 ...

最新文章

  1. LeetCode 589. N-ary Tree Preorder Traversal-多子节点树前序遍历--递归,迭代--反向压栈--C++解法
  2. linux下shell命令trap
  3. 操作系统:生产者与消费者问题
  4. HTML5中引入JS
  5. MyBatisPlus条件构造器实现降序排序的两种方式
  6. KDD 2020 开源论文 | GPT-GNN:图神经网络的生成式预训练
  7. CVE-2013-3897漏洞成因与利用分析
  8. java 顺序栈_Java实现顺序栈
  9. 自动化运维的正确姿势,你试了也会上瘾 | 社区福利
  10. 考研清华985信号与系统参考书籍(郑君里)重点
  11. 一款万能库存管理软件
  12. 虚幻引擎材质系统常用快捷键
  13. git lfs linux,GIT LFS 使用笔记
  14. 5G标准专利,谁执牛耳?
  15. 领导说我对任务的理解是错的
  16. ping ping ping HDU - 6203
  17. keras搬砖系列-残差网络的实现
  18. string字符串常见用法
  19. 没有基础半路学编程,靠谱吗?
  20. 树莓派下利用opencv在图片上画汉字点阵(写一句话)

热门文章

  1. matlab2c使用c++实现matlab函数系列教程-blkdiag函数
  2. matlab滤波器函数6,matlab中滤波器函数filter的c语言实现
  3. java界面怎么加图片不显示不出来_Java登录界面中添加背景图片,程序无错,但加载不了图片,求帮忙...
  4. python测试rabbitmq简易实例
  5. javaScript = == ===的区别
  6. Tesseract训练笔记
  7. sum problem
  8. centos 5.x 大硬盘管理
  9. [转载] python isinstance()方法的使用
  10. [转载] Python列表拷贝复制函数copy()函数的作用