const ES2015 (ES6) में पेश किया गया एक ब्लॉक-स्कोप्ड वेरिएबल डिक्लेरेशन है जो रीअसाइनमेंट को रोकता है। यह आधुनिक JavaScript में डिफ़ॉल्ट विकल्प होना चाहिए जब रीअसाइनमेंट की आवश्यकता न हो।
उदाहरण
<!DOCTYPE html> <html> <head> <style>
body { font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif; padding: 20px; }
.sample { font-size: 18px; font-weight: 500; line-height: 1.8; }
button { padding: 10px 20px; background: #dc3545; color: white; border: none; border-radius: 4px; cursor: pointer; }
</style> </head> <body>
<h1>JavaScript Const उदाहरण</h1>
<button class="Btn">Const मान बदलने का प्रयास करें</button>
<p class="sample"></p>
<h3>ऊपर दिए गए बटन पर क्लिक करके const रीअसाइनमेंट त्रुटि देखें</h3>
<script>
const sampleEle = document.querySelector(".sample");
const a = 33;
sampleEle.innerHTML = "a = " + a + "<br>";
document.querySelector(".Btn").addEventListener("click", () => {
try {
a = 44; // TypeError: Assignment to constant variable
} catch (err) {
sampleEle.innerHTML += "त्रुटि: " + err.message + "<br>";
sampleEle.innerHTML += "कॉन्स्टेंट मान बदला नहीं जा सकता!";
}
});
</script> </body> </html>
आउटपुट
बटन क्लिक करने पर: त्रुटि: Assignment to constant variable
Const के महत्वपूर्ण नियम
| नियम | उदाहरण | परिणाम |
|---|---|---|
| रीअसाइनमेंट नहीं | const x = 1; x = 2; | TypeError |
| इनिशियलाइज़ेशन आवश्यक | const x; | SyntaxError |
| ब्लॉक स्कोप | { const x = 1; } console.log(x); | ReferenceError |
| ऑब्जेक्ट म्यूटेशन अनुमत | const obj = {}; obj.prop = 1; | काम करता है |
| एरे म्यूटेशन अनुमत | const arr = []; arr.push(1); | काम करता है |
सर्वोत्तम अभ्यास
- डिफ़ॉल्ट:
constउपयोग करें - रीअसाइनमेंट जरूरी हो:
letउपयोग करें - वैरिएबल नहीं:
varउपयोग न करें (होइस्टिंग मुद्दे) - ऑब्जेक्ट फ्रीज: पूरी तरह इम्म्यूटेबल के लिए
Object.freeze()उपयोग करें