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 - vscode alt+shift+f 格式化js代碼,通不過eslint的代碼風格檢查怎么辦。。。2. javascript - [js]為什么畫布里不出現圖片呢?在線等3. python - 如何判斷爬蟲已經成功登陸?4. html - vue項目中用到了elementUI問題5. html5 - 有可以一次性把所有 css外部樣式轉為html標簽內style=" "的方法嗎?6. javascript - 如何將一個div始終固定在某個位置;無論屏幕和分辨率怎么變化;div位置始終不變7. javascript - 原生canvas中如何獲取到觸摸事件的canvas內坐標?8. javascript - 有什么比較好的網頁版shell前端組件?9. javascript - 這不是對象字面量函數嗎?為什么要new初始化?10. javascript - 求解答:實例對象調用constructor,此時constructor內的this的指向?
