निम्नलिखित तीन प्रकार की त्रुटियां हैं जिनकी आप जावास्क्रिप्ट में अपेक्षा कर सकते हैं -
सिंटैक्स त्रुटियां
सिंटेक्स त्रुटियां जिन्हें पार्सिंग त्रुटियां भी कहा जाता है, पारंपरिक प्रोग्रामिंग भाषाओं में संकलन समय पर और जावास्क्रिप्ट में व्याख्या समय पर होती हैं।
जब जावास्क्रिप्ट में एक सिंटैक्स त्रुटि होती है, तो केवल उसी थ्रेड में निहित कोड होता है जिसमें सिंटैक्स त्रुटि प्रभावित होती है और अन्य थ्रेड्स में शेष कोड यह मानकर निष्पादित हो जाता है कि उनमें कुछ भी त्रुटि वाले कोड पर निर्भर नहीं करता है।
रनटाइम त्रुटियां
रनटाइम त्रुटियाँ, जिन्हें अपवाद भी कहा जाता है, संकलन/व्याख्या के बाद निष्पादन के दौरान होती हैं। अपवाद उस थ्रेड को भी प्रभावित करते हैं जिसमें वे होते हैं, जिससे अन्य JavaScript थ्रेड सामान्य निष्पादन जारी रखते हैं।
तार्किक त्रुटियां
लॉजिक त्रुटियां ट्रैक करने के लिए सबसे कठिन प्रकार की त्रुटियां हो सकती हैं। ये त्रुटियां सिंटैक्स या रनटाइम त्रुटि का परिणाम नहीं हैं। इसके बजाय, वे तब होते हैं जब आप उस तर्क में गलती करते हैं जो आपकी स्क्रिप्ट को आगे बढ़ाता है और आपको अपेक्षित परिणाम नहीं मिलता है।
आप उन त्रुटियों को नहीं पकड़ सकते क्योंकि यह आपकी व्यावसायिक आवश्यकता पर निर्भर करता है कि आप अपने कार्यक्रम में किस प्रकार का तर्क रखना चाहते हैं।