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

JavaScript Symbol.toString(): सिंबल का स्ट्रिंग प्रतिनिधित्व

Symbol.prototype.toString() मेथड निर्दिष्ट सिंबल ऑब्जेक्ट का स्ट्रिंग प्रतिनिधित्व लौटाता है, जो "Symbol(description)" फॉर्मेट में होता है। यह डिबगिंग और लॉगिंग के लिए उपयोगी है।

उदाहरण

<!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; } 
    div { font-size: 20px; font-weight: 500; } 
    button { padding: 10px 20px; background: #6f42c1; color: white; border: none; border-radius: 4px; cursor: pointer; } 
</style> </head> <body> 
<h1>JavaScript Symbol.toString() मेथड</h1> 
<div class="sample"></div> 
<button class="Btn">सिंबल के स्ट्रिंग प्रतिनिधित्व प्राप्त करें</button> 
<h3>ऊपर दिए गए बटन पर क्लिक करके सिंबल के लिए स्ट्रिंग प्रतिनिधित्व प्राप्त करें</h3> 
<script> 
    const fillEle = document.querySelector(".sample"); 
    const symbol = Symbol.for("HELLO"); 
    const symbol1 = Symbol.for("NEW"); 
    const symbol2 = Symbol.for(711); 
    
    document.querySelector(".Btn").addEventListener("click", () => { 
        fillEle.innerHTML += symbol.toString() + "<br>"; 
        fillEle.innerHTML += symbol1.toString() + "<br>"; 
        fillEle.innerHTML += symbol2.toString() + "<br>"; 
    }); 
</script> </body> </html>

आउटपुट

Symbol(HELLO)
Symbol(NEW)
Symbol(711)

Symbol.toString() vs String()

const sym = Symbol("test");

sym.toString();     // "Symbol(test)" - स्पष्ट सिंबल प्रतिनिधित्व
String(sym);        // "Symbol(test)" - समान
`${sym}`;           // TypeError: सिंबल को स्ट्रिंग में इम्प्लिसिटली नहीं बदल सकते

// स्पष्ट रूपांतरण आवश्यक
String(sym);        // ठीक
sym.toString();     // ठीक

Symbol.description प्रॉपर्टी (ES2019)

const sym = Symbol("मेरा विवरण");
sym.description; // "मेरा विवरण" - केवल विवरण भाग
sym.toString();  // "Symbol(मेरा विवरण)" - पूरा प्रतिनिधित्व

Symbol.for() के साथ

const globalSym = Symbol.for("shared");
globalSym.toString(); // "Symbol(shared)"

// ग्लोबल रजिस्ट्री में समान की = समान सिंबल
Symbol.for("shared") === globalSym; // true

डिबगिंग टिप

कंसोल में सिंबल लॉग करते समय, console.log(sym) स्वचालित रूप से toString() कॉल करता है, लेकिन स्ट्रिंग कनकैटनेशन में स्पष्ट कॉल आवश्यक है।

  1. JavaScript symbol.valueOf() फंक्शन JavaScript symbol.valueOf() फंक्शन

    JavaScript symbol.valueOf() फंक्शन एक सिंबल ऑब्जेक्ट का प्रिमिटिव मान लौटाता है। उदाहरण <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <

  1. JavaScript Symbol.toStringTag सिंबल JavaScript Symbol.toStringTag सिंबल

    JavaScript Symbol.toStringTag सिंबल एक प्रसिद्ध सिंबल है जो ऑब्जेक्ट निर्माण के दौरान उसके विवरण के लिए एक स्ट्रिंग-मान वाली प्रॉपर्टी है। उदाहरण <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content=&q

  1. जावास्क्रिप्ट सिंबल्स क्या हैं? जावास्क्रिप्ट सिंबल्स क्या हैं?

    symbol डेटा टाइप एक प्रिमिटिव डेटा टाइप है। इन्हें ES6 में पेश किया गया था और ये पूरी तरह से यूनिक होते हैं और Symbol() फैक्ट्री फंक्शन का उपयोग करके बनाए जाते हैं जो सिंबल लौटाता है। जावास्क्रिप्ट सिंबल्स के लिए कोड निम्नलिखित है: उदाहरण <!DOCTYPE html> <html lang=en> <head> <