मैं क्लासिक एएसपी/वीबीस्क्रिप्ट में लिखे गए वेब एप्लिकेशन का समर्थन/बढ़ा रहा हूं। यह लगभग 10 साल हो गया है क्योंकि मैंने दिन-प्रतिदिन क्षमता में उपयोग किया है। मैं बस एक मुद्दे पर भाग गया कि मैं "गॉचा" पर विचार करूंगा और सोच रहा था कि क्या दूसरों के समान चीजें हैं जिन्हें मुझे अवगत होना सीखना चाहिए।एएसपी/वीबीस्क्रिप्ट "गॉटचास"
मेरी समस्या:
मुझे एक SQL तालिका में एक कॉलम को फ्लोट से दशमलव में परिवर्तित करना पड़ा। यह पता चला है कि दशमलव एक प्रकार का नहीं है जो वास्तव में समर्थित है (या अच्छी तरह से समर्थित है) vbscript में। तो निम्न कोड:
Dim var1, var2
var1 = rs("DecimalField1").Value
var2 = rs("DecimalField2").Value
If (var1 <> var2) Then
'Do Something'
End If
लाइन पर एक प्रकार बेमेल त्रुटि के साथ उड़ा चाहेंगे:
If (var1 <> var2) Then
बहुत खोज के बाद मुझे पता चला है कि:
var1 = CDBL(rs("DecimalField1").Value)
var2 = CDBL(rs("DecimalField2").Value)
समस्या का समाधान। लेकिन यह एक स्पष्ट बात की तरह प्रतीत नहीं हुआ और मुझे यह पता लगाने में थोड़ी देर लग गई कि मुझे उस रेखा पर टाइप मिस्चैच क्यों मिल रहा था।
तो हर किसी के लिए मेरे सवाल है, क्या अन्य छोटे quirks इस तरह आप के पार चला है? एएसपी/वीब्स्क्रिप्ट के भीतर कुछ चीजें क्या हैं जिन्हें आप "गेटचास" के रूप में सोचेंगे जो मुझे देखने के लिए होना चाहिए?
उन बयानों को पढ़ने और लिखना आसान है जिनके पास असभ्य माता-पिता नहीं हैं। –
शब्द अभिव्यक्ति का आपका उपयोग भ्रामक है, एक कथन एक अभिव्यक्ति नहीं है। अभिव्यक्ति कोष्ठक में फ़ंक्शन का उपयोग करते समय हमेशा आवश्यक होता है। मैंने कभी भी इस गलती का प्रयास नहीं किया है और चूंकि इसे सिंटैक्स त्रुटि के रूप में उठाया जाता है, इसलिए यह शायद ही कभी 'गोटा' – AnthonyWJones
है, यह लंबे समय तक रहने वाला गॉचा नहीं है, लेकिन यह एक आम बात है जो वीबीस्क्रिप्ट लेखकों (ज्यादातर नए) यात्रा करता है। मैंने यह नहीं कहा कि एक बयान एक अभिव्यक्ति थी। एक बयान में आमतौर पर अभिव्यक्तियां होती हैं, हालांकि। "DoSomething arg" के मामले में यह एक कथन है जिसमें एक कार्यात्मक-कॉल-अभिव्यक्ति शामिल है। –