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();
}
}
Löser följande problem:
- Om du kan använda async/await är det meningslöst att fortfarande använda
thenför dessa situationer... - Du behöver inte JSON
stringifyochparseom du loggar något. - Om du upptäcker ett fel för att stänga en anslutning, bör du verkligen kasta om det så att funktionen som anropar
getResultblir inte skräp/undefinedtillbaka. Istället för att kasta om det lade jag bara till enfinallyblock som alltid stänger anslutningen, oavsett om den lyckades eller inte. - Eftersom du använder async/await bör din javascript-motor stödja
letochconst. Det är bättre änvar=) - Du returnerade ingenting.