我写的这个函数:
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一样的同步代码了吗?
光阴似箭催人老,日月如移越少年。
async 肯定会返回 Promise 啊,加了 await 才会返回直接结果。不过 await 只能出现在 async function 中……
async
await
async function
所以,最里层的 async function 一定是返回一个 Promise(或者直接量,它会封装成 Promise),而最外层得到的一定也是一个 Promise。
async
肯定会返回 Promise 啊,加了await
才会返回直接结果。不过await
只能出现在async function
中……所以,最里层的
async function
一定是返回一个 Promise(或者直接量,它会封装成 Promise),而最外层得到的一定也是一个 Promise。