当前位置: 首页 > news >正文

西安 内部网站建设南宁公司注册

西安 内部网站建设,南宁公司注册,如何建网址,网站建设教程突来源#xff1a;Nodejs 第十八章#xff08;util#xff09; util 是Node.js内部提供的很多实用或者工具类型的API util.promisify 用于将遵循Node回调风格#xff08;即最后一个参数为回调函数#xff09;的函数转换成返回Promise的函数#xff0c;这样可以使得异步代…来源Nodejs 第十八章util util 是Node.js内部提供的很多实用或者工具类型的API util.promisify 用于将遵循Node回调风格即最后一个参数为回调函数的函数转换成返回Promise的函数这样可以使得异步代码更容易使用和维护 常规获取node版本 const {exec} require(child_process) exec(node -v, (err, stdout, stderr) {if (err) {console.error(执行出错${err});return;}console.log(stdout: ${stdout});console.error(stderr: ${stderr}); })promise风格获取Promiseify 接受 original一个函数体 const util require(util); const {exec} require(child_process); const execPromise util.promisify(exec) execPromise(node -v).then(res {console.log(res, res) }).catch(err {console.log(err, err) })promisify实现原理 1、promisify返回一个新的函数 2、接收一个函数作为参数并在返回的函数中接收真正的参数然后返回一个promise 3、调用真正的函数并将参数透传给original,如果失败了就reject如果成功就resolve util.callbackify(original) 将promise类型的API转回成回调函数形式 const util require(util) const fn (type) {if(type 1){return Promise.resolve(test)}return Promise.reject(error) } const callback util.callbackify(fn) callback(1, (err, val) {console.log(err,val) })const util require(util) const fn (type) {if(type 1){return Promise.resolve(test)}return Promise.reject(error) } const callback util.callbackify(fn) callback(1122, (err, val) {console.log(err,val) })callbackify实现原理 1、接收原始函数callbackify接受一个返回promise的函数作为参数 2、创建一个新函数这个新函数会接收与原始函数相同的参数但会在最后多一个回调函数node的回调风格 3、处理promise的结果 如果Promise成功(resolved)则调用回调函数并传递null作为第一个参数表示没有错误以及Promise的结果作为第二个 参数 如果Promise失败rejected, 则调用回调函数并传递错误对象作为第一个参数第二个参数为undefined function callbackify(originalFunction){return function(...args){// 获取最后一个参数作为回调函数const callback args.pop();if(typeof callback ! function){throw new TypeError(The last argument must be a function)}// 调用原始函数并获取promiseconst promise originalFunction.apply(this, args)if(!(promise instanceof Promise)){return callback(new TypeError(The function must return a Promise))}// 处理promise结果promise.then(result {// promise成功调用回调函数并传递null和结果callback(null, result)}, error {// promise失败调用回调函数并传递错误callback(error)}) } } // 使用 const fn (type) {if (type 1) {return Promise.resolve(test);}return Promise.reject(error);};const callback callbackify(fn);callback(1, (err, val) {console.log(err, val); // 输出: null test});callback(2, (err, val) {console.log(err, val); // 输出: error undefined});util.format() 使用第一个参数作为类似printf的格式字符串可包含零个或多个格式说明符来返回格式化的字符串每个说明符都替换为来自相应参数的转换后的值如果说明符没有相应的参数则不会替换它 格式字符串是由%引导的用来控制字符串输出的格式 支持的说明符有 %s: String 将用于转换除 BigInt、Object 和 -0 之外的所有值。 BigInt 值将用 n 表示没有用户定义的 toString 函数的对象使用具有选项 { depth: 0, colors: false, compact: 3 } 的 util.inspect() 进行检查 %d: Number将用于转换除BigInt和Symbol之外的所有值 %i: parseInt(value, 10)用于除BigInt和Symbol之外的所有值 %f: parseFloat(value) 用于除 Symbol 之外的所有值 %j: JSON.如果参数包含循环引用则替换为字符串 ‘[Circular]’ %o: Object。具有通用 JavaScript 对象格式的对象的字符串表示形式。类似于具有选项 { showHidden: true, showProxy: true } 的 util.inspect()。这将显示完整的对象包括不可枚举的属性和代理 %O: Object。具有通用 JavaScript 对象格式的对象的字符串表示形式。类似于没有选项的 util.inspect()。这将显示完整的对象但不包括不可枚举的属性和代理。 %c:CSS。此说明符被忽略将跳过任何传入的 CSS %%:单个百分号 (‘%’)。这不消费参数。 const util require(util); //说明符没有相应的参数则不会替换它 console.log(util.format(%s:%s, 11));//11:%s //参数多于说明符的数量则额外的参数将以空格分隔串联到返回的字符串 console.log(util.format(%s:%s, foo, bar, baz));//foo:bar baz
http://www.hkea.cn/news/14490116/

相关文章:

  • 石家庄站到石家庄北站台州椒江区建设局网站
  • 网站建设制作经验足耒阳市古雍网站建设店
  • 帮人做淘宝网站骗钱宁德市人社局官网
  • 有做软件的网站有哪些2022网页游戏排行榜前十
  • 中国建设教育网站网站备案和域名备案区别
  • 网站备案关站网商之窗挂
  • 网站建设上传视频教程网站建设 常用字体
  • wordpress建站全过程wordpress自带数据库优化
  • 厦门协会网站建设推广平台开户代理
  • 咸阳制作网站电子商务专业就业方向及前景
  • 网站开发与软件销售WordPress个性页面
  • 南京江北新区最新规划seo优化器
  • 如何创建div做网站网站如何添加统计代码
  • 胶州网站制作网站开发项目设计文档
  • 免费做试卷的网站或试卷学的建筑专业后悔一辈子
  • 网站 改版 方案徐州网站备案
  • 广告公司网站建设方案网页制作平台软件
  • app开发与网站开发的区别帮公司制作网页多少钱
  • 怎么用代码做网站海口智能建站模板
  • 365网站建设导入到wordpress
  • 和平东路网站建设wordpress即时聊天插件
  • 网站首页做很多个关键词上饶市网站建设公司
  • 佛山市专注网站建设平台山东青岛网站设计公司
  • 在婚恋网站做翻译好吗网站运营的作用
  • 国外可以用什么网站做问卷wordpress网站建站
  • asp企业建站系统当下最火的购物平台
  • 网站删除模块网站建设里面链接打不开
  • 投票网站制作免费qq关键词排名优化
  • 成都创新网站建设怎么网站建设到百度
  • 移动开发网站开发区别wordpress的图片主题