Promise 的出现目的是解决Node.js 异步编程中回调地狱的问题。
语法:
1 const fs = require('fs') 2 3 function f1 () { 4 return new Promise((resolve, reject) => { 5 fs.readFile('./1.txt', 'utf8', (err, result) => { 6 // 如果执行成功,用resolve 把结果传递出去。 7 resolve(result) 8 }) 9 }) 10 } 11 12 function f2 () { 13 return new Promise((resolve, reject) => { 14 fs.readFile('./2.txt', 'utf8', (err, result) => { 15 // 如果执行成功,用resolve 把结果传递出去。 16 resolve(result) 17 }) 18 }) 19 } 20 21 function f3 () { 22 return new Promise((resolve, reject) => { 23 fs.readFile('./3.txt', 'utf8', (err, result) => { 24 // 如果执行成功,用resolve 把结果传递出去。 25 resolve(result) 26 }) 27 }) 28 } 29 30 f1().then((res1) => { 31 console.log(res1) 32 return f2() 33 }) 34 .then((res2) => { 35 console.log(res2) 36 return f3() 37 }) 38 .then((res3) => { 39 console.log(res3) 40 })