您的位置:首页技术文章
文章详情页

javascript - await 后面的Promise对象的回调方法在哪里写

【字号: 日期:2023-09-17 11:00:55浏览:47作者:猪猪

问题描述

关于await的困惑

最近刚理解了:CO模块实现了generator里面yield的自动调用。但是自动调用的话,每个yield后面的promise对象的resolve和reject回调方法,在哪里定义呢?

今天又看到ES7的async代替了function*,await代替了yield,

又有同样的困惑,每个await后面的promise对象的resolve和reject回调方法,在哪里定义呢?

var fs = require(’fs’);var readFile = function (fileName) { return new Promise(function (resolve, reject) { fs.readFile(fileName, function(error, data) { if (error) reject(error); resolve(data); }); });};var asyncReadFile = async function () { var f1 = await readFile(’/etc/fstab’);//这里没有定义回调,回调在哪里定义 var f2 = await readFile(’/etc/shells’);//这里没有定义回调,回调在哪里定义 console.log(f1.toString()); console.log(f2.toString());};

问题解答

回答1:

f1 f2 就是resolve的返回啊,如果要出理reject的返回,请用try catch

标签: JavaScript
相关文章: