Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> JavaScript

JavaScript SyntaxError: missing ) after argument list - समाधान

JavaScript यह जानने के लिए ब्रैकेट्स पर निर्भर करता है कि फंक्शन कॉल कहां शुरू और खत्म होते हैं। यदि आप किसी फंक्शन के बंद होने से पहले सिंटैक्स का एक टुकड़ा भूल जाते हैं, तो आपको "SyntaxError: missing ) after argument list" त्रुटि का सामना करना पड़ेगा।

यह गाइड बताता है कि इस त्रुटि का क्या अर्थ है और यह क्यों उठाई जाती है। हम इस मुद्दे का एक उदाहरण देखेंगे ताकि आप सीख सकें कि समस्या को ठीक करने के लिए आपको क्या जानने की आवश्यकता है।

SyntaxError: missing ) after argument list

"missing ) after argument list" संदेश हमें बताता है कि फंक्शन कॉल के अंदर एक सिंटैक्स त्रुटि है।

यह तब हो सकता है जब आप आर्गुमेंट्स की सूची के अंत में एक कॉमा जोड़ते हैं जिसके बाद कोई अन्य आर्गुमेंट नहीं होता।

JavaScript प्रत्येक कॉमा के बाद एक और आर्गुमेंट की अपेक्षा करता है। यदि JavaScript को एक और आर्गुमेंट नहीं मिलता है, तो आपका कोड सफलतापूर्वक पार्स नहीं किया जा सकता और क्लोजिंग पैरेंथेसिस एक सिंटैक्स त्रुटि उत्पन्न करेगा।

इस समाधान का एक और संभावित कारण यह है कि फंक्शन में आर्गुमेंट्स को अलग करने के लिए आपको जिस कॉमा की आवश्यकता है उसे एक स्ट्रिंग के अंदर संलग्न करना।

यदि आप इस त्रुटि का सामना करते हैं, तो उस कोड में सभी सिंटैक्स को ध्यान से पढ़ें जिस पर JavaScript त्रुटि इंगित करती है। सुनिश्चित करें कि आपके सभी ब्रैकेट्स मेल खाते हैं और आपने अपने फंक्शन कॉल के अंदर कॉमाज का सही उपयोग किया है।

एक उदाहरण परिदृश्य

हम एक प्रोग्राम लिखने जा रहे हैं जो गणना करता है कि स्कूल में किसी छात्र ने टेस्ट पास किया है या फेल। शुरू करने के लिए, आइए उस ग्रेड को परिभाषित करें जो एक छात्र ने अर्जित किया है और एक संदेश जिसे हम कंसोल पर प्रिंट करेंगे जो हमें बताएगा कि छात्र पास हुआ है या फेल:

var grade = 57;
var message = "This student has X their test.";

JavaScript वेरिएबल "message" में एक प्लेसहोल्डर अक्षर X शामिल है। हम बाद में अपने प्रोग्राम में इसे "passed" या "failed" से बदल देंगे।

यदि किसी छात्र का ग्रेड 53 से अधिक है, तो उन्होंने टेस्ट पास कर लिया है। अन्यथा, वे फेल हो गए हैं।

अब जब हमने अपने छात्र का ग्रेड परिभाषित कर लिया है, तो हम गणना कर सकते हैं कि उन्होंने अपना टेस्ट पास किया है या फेल। ऐसा करने के लिए, हम एक if स्टेटमेंट का उपयोग करने जा रहे हैं:

if (grade > 53) {
  message.replace("X,", "passed");
} else {
  message.replace("X", "failed");
}

हम यह मूल्यांकन करने के लिए एक if स्टेटमेंट और एक else स्टेटमेंट का उपयोग करते हैं कि छात्र पास हुआ है या फेल। यदि if स्टेटमेंट सत्य के रूप में मूल्यांकन करता है, तो हमारे "message" स्ट्रिंग में "X" का मान "passed" हो जाता है; अन्यथा, "X" का मान "failed" हो जाता है।

अब जब हमने संदेश लिख लिया है जो हमें सूचित करता है कि छात्र ने अपना टेस्ट पास किया है या फेल, तो हम उस संदेश को JavaScript कंसोल पर प्रिंट कर सकते हैं:

console.log(message);

आइए अपना कोड चलाएं और देखें क्या होता है:

Uncaught SyntaxError: missing ) after argument list

हमारा कोड एक सिंटैक्स त्रुटि लौटाता है।

समाधान

JavaScript हमारे कोड का मूल्यांकन करने में असमर्थ है क्योंकि हमने अपने फंक्शन कॉल्स में से एक के अंदर गलती की है। हम यह जानते हैं क्योंकि आर्गुमेंट लिस्ट्स फंक्शन कॉल्स में मौजूद होती हैं।

आइए अपने फंक्शन कॉल्स पर एक नज़र डालें:

message.replace("X,", "passed");
message.replace("X", "failed");

जबकि दूसरा स्टेटमेंट सिंटैक्टिकली सही प्रतीत होता है, पहले वाले में एक त्रुटि है। हमने अपने पहले स्ट्रिंग के बाद के बजाय अपने पहले स्ट्रिंग के अंदर एक कॉमा जोड़ा है। पहले replace() कॉल में "X," स्टेटमेंट पर ध्यान दें।

यह हमारे आर्गुमेंट लिस्ट को एक के बाद एक दो मान रखने का कारण बनता है। यह गलत सिंटैक्स है। आर्गुमेंट्स को कॉमा से अलग किया जाना चाहिए।

इस त्रुटि को ठीक करने के लिए, हम कॉमा को "X," स्ट्रिंग के अंदर से बाहर स्ट्रिंग में ले जाने जा रहे हैं:

message.replace("X", "passed");

हमने कॉमा को स्ट्रिंग के बाहर ले जाया है। आइए अपना कोड चलाएं और देखें कि क्या यह काम करता है।

हमारा कोड लौटाता है:

"This student has passed their test."

हमारा कोड सफलतापूर्वक निष्पादित हुआ!

निष्कर्ष

"SyntaxError: missing ) after argument list" त्रुटि तब उत्पन्न होती है जब फंक्शन कॉल का सही ढंग से मूल्यांकन नहीं किया जा सकता। इस त्रुटि को ठीक करने के लिए, सुनिश्चित करें कि आपके आर्गुमेंट्स सही ढंग से स्वरूपित हैं। दोबारा जांचें कि फंक्शन कॉल में सभी आर्गुमेंट्स कॉमा से अलग हैं।

अब आपके पास इस सिंटैक्स त्रुटि को एक विशेषज्ञ की तरह ठीक करने का ज्ञान है!

  1. JavaScript appendChild: एक संपूर्ण गाइड JavaScript appendChild: एक संपूर्ण गाइड

    JavaScript appendChild() मेथड किसी नोड के अंत में आइटम जोड़ता है। appendChild() का उपयोग अक्सर लिस्ट में <li> आइटम्स जोड़ने के लिए किया जाता है। यदि आप किसी नोड में एक से अधिक आइटम जोड़ना चाहते हैं तो आपको कई appendChild() स्टेटमेंट्स का उपयोग करना होगा। JavaScript appendChild का उपयोग कैसे क

  1. JavaScript का उपयोग करके लिंक्ड लिस्ट बनाना JavaScript का उपयोग करके लिंक्ड लिस्ट बनाना

    आइए एक साधारण क्लास को परिभाषित करके शुरू करें जिसमें एक कंस्ट्रक्टर हो जो हेड को null पर इनिशियलाइज़ करता है। हम LinkedList क्लास के प्रोटोटाइप पर एक और स्ट्रक्चर भी परिभाषित करेंगे जो लिंक्ड लिस्ट में प्रत्येक नोड का प्रतिनिधित्व करेगा। उदाहरण class LinkedList {    constructor() {  

  1. JavaScript में डबल लिंक्ड लिस्ट को सर्कुलर बनाना JavaScript में डबल लिंक्ड लिस्ट को सर्कुलर बनाना

    डबल लिंक्ड लिस्ट में, अंतिम नोड का नेक्स्ट पॉइंटर पहले नोड की ओर इंगित करता है और पहले नोड का प्रीवियस पॉइंटर अंतिम नोड की ओर इंगित करता है, जिससे यह दोनों दिशाओं में सर्कुलर बन जाता है। सर्कुलर लिंक्ड लिस्ट में इन्सर्शन्स और डिलीशन्स अन्य लिंक्ड लिस्ट के समान ही हैं। आपको बस लिंक्ड लिस्ट के किसी