async function getResult(){
let connection;
try {
connection = await mysql.createConnection(dbConfig);
const result = await connection.query('select height from users where pin=1100');
console.log(result[0].height);
return result[0].height;
} finally {
if (connection && connection.end) connection.end();
}
}
次の問題を修正します:
- async / awaitを使用できる場合でも、
then
を使用しても意味がありません これらの状況のために.. - JSONで
stringify
する必要はありません およびparse
何かをログに記録している場合。 - 接続を閉じるためにエラーをキャッチした場合は、実際にそれを再スローして、
getResult
を呼び出す関数を作成する必要があります。 ガベージ/undefined
を取得しません 戻る。再スローする代わりに、finally
を追加しました 成功したかどうかに関係なく、常に接続を閉じるブロック。 - async / awaitを使用しているため、JavaScriptエンジンは
let
をサポートする必要があります およびconst
。var
よりも優れています =) - 何も返さなかった。