node.js - nodejs 7 中的async,await到底应该怎么用?

浏览:22日期:2022-10-01

问题描述

我写的这个函数:

var mysql=require(’promise-mysql’);var pool=mysql.createPool({});async function query() { let rows= await pool.query(’select * from test’);return rows;}满以为会返回真正的记录,结果返回的还是一个promise对象,难道nodejs真的不能实现像java一样的同步代码了吗?

问题解答

回答1:

async 肯定会返回 Promise 啊,加了 await 才会返回直接结果。不过 await 只能出现在 async function 中……

所以,最里层的 async function 一定是返回一个 Promise(或者直接量,它会封装成 Promise),而最外层得到的一定也是一个 Promise。

相关文章: