3-async与await的结合实践

/**
 *  读取resource文件夹下个文件的内容: 1.html, 2.html, 3.html
 */

const fs = require("fs");
const util = require("util");
const mineReadFile = util.promisify(fs.readFile);

// 使用回调函数的方式来实现
// fs.readFile("./resource/1.html", (err, data1) => {
//   if (err) throw err;
//   fs.readFile("./resource/2.html", (err, data2) => {
//     if (err) throw err;
//     fs.readFile("./resource/3.html", (err, data3) => {
//       if (err) throw err;
//       let data = data1 + data2 + data3;
//       console.log(data.toString());
//     });
//   });
// });

// async与await

async function main() {
  // 读取第一个文件的内容
  try {
    let data1 = await mineReadFile("./resource/1.html");
    let data2 = await mineReadFile("./resource/2.html");
    let data3 = await mineReadFile("./resource/3.html");
    console.log(data1 + data2 + data3);
  } catch (error) {
    console.log(error);
  }
}

main();

推荐这些技术文章:

async await 链式同步处理异步

function doubleAfter2seconds(num,data) {
    return new Promise((resolve) => {
        setTimeout(() => {
            resolve(2 * nu...

简述、没有太多的废话 let const var 的区别 以及使用场景

var  let 是用来声明变量的,而const是声明常量的
var
       1.存在变量提升
       2、一个变量可多次声明,后面的声明会覆盖前面的声明
       3、在函数中使用var声明变量的时候,该变量是局部的作用域只在函数内部,而如果在函数外...

【ES6】之let&const关键字

 1、var声明的变量会越狱,而let声明的变量有严格的局部作用域

// 1、var声明的变量会越狱,而let声明的变量有严格的局部作用域
{
var a=1;
let b=1;
}
console.log(a); // 1
console.log(b); // b is not ...

var let const 区别

1.var  存在变量提升,何为变量提升,
可以先使用,后定义
如: console.log(a) //不报错,打印 undefined
  var a= 1;
  多次定义,值为最后者
如 var a= 1;
   var a=2;
console.log(a) //2 
2. console.log(b) //报错
 let b = 2;
不...

vue项目配置正式环境去掉console.log打印的日志

可以通过配置来控制是否显示console.log日志
配置位置:
项目根目录下有个babel.config.js
里面的plugins对象通过“transform-remove-console”插件来移除console.log

 
 
知道原理后,把如下代码注释掉,重新构建下正式环境工程就可以看到console.log日志了

 

...

typescript开发vue项目二次封装的axios用return Promise.reject(error) 返回异常,提示[Vue warn]: Error in v-on handler (Promise/async)

 
 
 
二次封装axios时刻意服务端模拟了延迟返回数据的场景,用return Promise.reject(error) 返回异常,报如下错误,
[Vue warn]: Error in v-on handler (Promise/async): "Error: timeout of 5000ms exceeded"

 

export defau...

Using async/await or task in web api controller (.net core)

原文:https://stackoverflow.com/questions/41953102/using-async-await-or-task-in-web-api-controller-net-core
 
I have a .net core API which has a controller that builds an aggregated object to retur...

[Javascript] Create an Async Generator and Loop Through Generated Promises with "For Await Of" Loops

Generators can yield promises which can work with the "for await of" loop syntax. This lesson shows how all the pieces fit together and explains why the async function* syntax can be necess...

Promise与async/await:1、A函数调用B函数,A、B函数是否使用await的区别;2、B函数return new promise()与const res = new promise(); return res;的区别

本文目的为了说明:
1、A(cilent)函数调用B(fx)函数,B函数是否使用await
2、A函数调用B函数,A函数是否使用await
3、B函数中直接return new promise,与const  res = new promise(); return res;的区别
 
结论:
 1、发起调用的函数A(client)不使用await,不管被调的函数B(...

[Javascript] Conditional add prop to Object

const b = true
const c = false
let object = {
a: 1,
...(b ? {b: 2}: {}),
...(c ? {c: 3}: {})
};
console.log(object) // { a: 1, b: 2 }

 

...

文章标题:3-async与await的结合实践
文章链接:https://www.dianjilingqu.com/1554.html
本文章来源于网络,版权归原作者所有,如果本站文章侵犯了您的权益,请联系我们删除,联系邮箱:saisai#email.cn,感谢支持理解。
THE END
< <上一篇
下一篇>>