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

JavaScript Error.name प्रॉपर्टी: त्रुटि प्रकार पहचानें

Error.name प्रॉपर्टी त्रुटि के कंस्ट्रक्टर का नाम लौटाती है (जैसे "Error", "TypeError", "ReferenceError", "SyntaxError")। यह प्रोग्रामेटिक त्रुटि वर्गीकरण के लिए उपयोगी है।

उदाहरण

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document</title> <style> 
    body { font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif; padding: 20px; } 
    .sample { font-size: 18px; font-weight: 500; } 
    button { padding: 10px 20px; background: #dc3545; color: white; border: none; border-radius: 4px; cursor: pointer; } 
</style> </head> <body> 
<h1>JavaScript Error.name प्रॉपर्टी</h1> 
<div class="sample"></div> 
<button class="Btn">त्रुटि नाम देखें</button> 
<h3>ऊपर दिए गए बटन पर क्लिक करके त्रुटि नाम देखें</h3> 
<script> 
    const sampleEle = document.querySelector(".sample"); 
    
    document.querySelector(".Btn").addEventListener("click", () => { 
        try { 
            confrm("क्या आप निश्चित हैं?"); // जानबूझकर टाइपो
        } catch (e) { 
            sampleEle.innerHTML = "त्रुटि नाम: " + e.name + "<br>"; 
            sampleEle.innerHTML += "त्रुटि संदेश: " + e.message; 
        } 
    }); 
</script> </body> </html>

आउटपुट

क्लिक करने पर: त्रुटि नाम: ReferenceError
त्रुटि संदेश: confrm is not defined

मानक JavaScript त्रुटि प्रकार

त्रुटि प्रकारनामसामान्य कारण
Error"Error"सामान्य आधार वर्ग
EvalError"EvalError"eval() संबंधी (दुर्लभ)
RangeError"RangeError"संख्या सीमा से बाहर
ReferenceError"ReferenceError"अघोषित वेरिएबल
SyntaxError"SyntaxError"पार्सिंग त्रुटि
TypeError"TypeError"गलत प्रकार पर ऑपरेशन
URIError"URIError"URI फंक्शन मिसयूज
AggregateError"AggregateError"एकाधिक त्रुटियां (Promise.allSettled)

कस्टम त्रुटि वर्ग

class ValidationError extends Error {
    constructor(message, field) {
        super(message);
        this.name = "ValidationError";
        this.field = field;
    }
}

try {
    throw new ValidationError("ईमेल अमान्य है", "email");
} catch (e) {
    console.log(e.name);     // "ValidationError"
    console.log(e.field);    // "email"
    console.log(e.message);  // "ईमेल अमान्य है"
}

व्यावहारिक उपयोग

function handleError(error) {
    switch (error.name) {
        case "ValidationError":
            showFieldError(error.field, error.message);
            break;
        case "NetworkError":
            showOfflineMessage();
            break;
        case "AuthError":
            redirectToLogin();
            break;
        default:
            logError(error);
            showGenericError();
    }
}
  1. JavaScript WebAPI File file.name प्रॉपर्टी JavaScript WebAPI File file.name प्रॉपर्टी

    JavaScript File WebAPI file.name प्रॉपर्टी बिना पथ के केवल फाइल का नाम लौटाती है।उदाहरण<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <t

  1. जावास्क्रिप्ट में ऑब्जेक्ट्स के ऐरे की प्रॉपर्टी नाम बदलना जावास्क्रिप्ट में ऑब्जेक्ट्स के ऐरे की प्रॉपर्टी नाम बदलना

    जावास्क्रिप्ट में ऑब्जेक्ट्स के ऐरे की प्रॉपर्टी नाम बदलने का कोड निम्नलिखित है - उदाहरण <!DOCTYPE html> <html lang=en> <head> <meta charset=UTF-8 /> <meta name=viewport content=width=device-width, initial-scale=1.0 /> <title>Document</title> <style>

  1. जावास्क्रिप्ट में ES6 प्रॉपर्टी शॉर्टहैंड्स जावास्क्रिप्ट में ES6 प्रॉपर्टी शॉर्टहैंड्स

    ES6 में, यदि ऑब्जेक्ट की नाम और प्रॉपर्टीज के रूप में पास किए गए वेरिएबल्स का नाम समान है तो हम केवल की नाम निर्दिष्ट करके वैल्यू नाम को छोड़ सकते हैं। जावास्क्रिप्ट में प्रॉपर्टी शॉर्टहैंड्स के लिए निम्नलिखित कोड है: उदाहरण <!DOCTYPE html> <html lang="en"> <head> <me