javascript 回调,承诺和异步/等待

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javascript 回调,承诺和异步/等待相关的知识,希望对你有一定的参考价值。


import fs from 'fs'
import util from 'util'

const path = '/Users/hczhao/code/flow/algor/sort/heap.py'

// -----------------------------------------------------------------------------
// Callback style
fs.readFile(path, (err, data) => {
  if (err) return console.log(err)
  console.log(data.toString())
})

const promiseReadFile = util.promisify(fs.readFile)

// -----------------------------------------------------------------------------
// Promise style
promiseReadFile(path)
  .then(data => {
    console.log(data.toString())
  })
  .catch(err => {
    console.log(err)
  })

// -----------------------------------------------------------------------------
// Async/Await style
const readFileAwait = async (path) => {
  try {
    const data = await promiseReadFile(path)
    console.log(data.toString())  
  } catch(err) {
    console.log(err)
  }
}

readFileAwait(path)

以上是关于javascript 回调,承诺和异步/等待的主要内容,如果未能解决你的问题,请参考以下文章

markdown 回调,承诺,异步等待

承诺等待得到解决而不返回

Javascript - 异步等待和获取 - 返回值,而不是承诺?

javascript 承诺和异步等待

javascript 承诺和异步等待

异步 JavaScript - 回调与延迟/承诺 [重复]