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. से बेहतर है =) - आप कुछ भी नहीं लौटा रहे थे।