javascript - await 后面的Promise對象的回調方法在哪里寫
問題描述
關于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
相關文章:
1. 我在centos容器里安裝docker,也就是在容器里安裝容器,報錯了?2. 基于Nginx的Wordpress安裝失敗?3. Java OutputStream等效于getClass()。getClassLoader()。getResourceAsStream()4. mongoDB批量插入文檔時,運行下面代碼,用MongoVUE查看數據庫,mongo庫中只存在一個文檔?不應該是20個嗎?5. 如何編寫可以用Java計算能力的函數。無循環6. CSS3可否做出這個效果?7. type=text/css是什么意思8. javascript - ui-router可否控制歷史記錄9. javascript - vue中怎么給input的value綁定計算屬性10. docker 17.03 怎么配置 registry mirror ?
