问题描述
我写的这个函数:
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。