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/प्रतीक्षा का उपयोग कर सकते हैं, तब भी
then
का उपयोग करना व्यर्थ है इन स्थितियों के लिए.. - आपको JSON
stringify
करने की आवश्यकता नहीं है औरparse
अगर आप कुछ लॉग कर रहे हैं। - यदि आप किसी कनेक्शन को बंद करने में कोई त्रुटि पाते हैं, तो आपको वास्तव में इसे फिर से फेंक देना चाहिए ताकि
getResult
को कॉल करने वाला फ़ंक्शन कचरा नहीं मिलता/undefined
पीछे। इसे फिर से फेंकने के बजाय, मैंने अभी एकfinally
जोड़ा है ब्लॉक जो हमेशा कनेक्शन को बंद कर देता है, चाहे वह सफल रहा या नहीं। - चूंकि आप async/प्रतीक्षा का उपयोग कर रहे हैं, आपके जावास्क्रिप्ट इंजन को
let
. का समर्थन करना चाहिए औरconst
. यहvar
. से बेहतर है =) - आप कुछ भी नहीं लौटा रहे थे।