ITPub博客

首页 > IT职业 > IT图书 > Node.js中promisify()方法是什么

Node.js中promisify()方法是什么

IT图书 作者:sbzyg 时间:2021-09-11 09:46:24 0 删除 编辑

Node.js内置的util模块有一个promisify()方法。

1、该方法将基于回调的函数转换为基于Promise的函数。

2、可以将Promise链和async/await与基于回调的API结合使用。

Node.js的fs模块在读取文件时,需要使用回调:

const fs = require('fs')
 fs.readFile('./package.json', function callback(err, buf) {
  const obj = JSON.parse(buf.toString('utf8'))
  console.log(obj.name) // 'Example' -> package.json 包名
})
可以使用util.promisify()将fs.readFile()的回调函数转换为返回Promise函数:
const fs = require('fs')
const util = require('util')
// 将 fs.readFile() 转换为一个接受相同参数但返回 Promise 的函数。
const readFile = util.promisify(fs.readFile)
// 现在可以将 readFile() 与 await 一起使用!
const buf = await readFile('./package.json')
const obj = JSON.parse(buf.toString('utf8'))
console.log(obj.name) // 'Example'

以上就是Node.js中promisify()方法的介绍,希望对大家有所帮助。更多编程基础知识学习:python学习网

本文转载于php中文网,如有侵犯联系作者修改。

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/2353/viewspace-2828096/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2019-08-15

  • 博文量
    101
  • 访问量
    624