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. javascript - axios請求回來的數據組件無法進行綁定渲染2. Python中使用超長的List導致內存占用過大3. java - spring boot 如何打包成asp.net core 那種獨立應用?4. java - 在用戶不登錄的情況下,用戶如何添加保存到購物車?5. javascript - main head .intro-text{width:40%} main head{display:flex}為何無效?6. javascript - JS變量被清空7. javascript - 關于apply()與call()的問題8. 安全性測試 - nodejs中如何防mySQL注入9. css3 - 純css實現點擊特效10. javascript - 有適合開發手機端Html5網頁小游戲的前端框架嗎?
