जावास्क्रिप्ट कॉन्स्ट
const
कीवर्ड
ES6 (2015) में पेश किया गया था ।
के साथ परिभाषित चर को const
फिर से घोषित नहीं किया जा सकता है।
के साथ परिभाषित चर const
को पुन: असाइन नहीं किया जा सकता है।
वेरिएबल के साथ परिभाषित किया गया है जिसमें const
ब्लॉक स्कोप है।
पुन: असाइन नहीं किया जा सकता
एक const
चर को पुन: असाइन नहीं किया जा सकता है:
उदाहरण
const PI = 3.141592653589793;
PI = 3.14; // This will give an error
PI = PI + 10; // This will also give an error
असाइन किया जाना चाहिए
घोषित होने पर JavaScript const
वैरिएबल को एक मान असाइन किया जाना चाहिए:
सही
const PI = 3.14159265359;
ग़लत
const PI;
PI = 3.14159265359;
जावास्क्रिप्ट कॉन्स्ट का उपयोग कब करें?
एक सामान्य नियम के रूप में, हमेशा एक चर घोषित करें const
जब तक कि आप यह नहीं जानते कि मान बदल जाएगा।
const
घोषणा करते समय उपयोग करें :
- एक नई सरणी
- एक नई वस्तु
- एक नया समारोह
- एक नया RegExp
स्थिर वस्तुएँ और सरणियाँ
कीवर्ड const
थोड़ा भ्रामक है।
यह एक स्थिर मूल्य को परिभाषित नहीं करता है। यह एक मूल्य के निरंतर संदर्भ को परिभाषित करता है।
इस वजह से आप नहीं कर सकते:
- एक स्थिर मान पुन: असाइन करें
- एक स्थिर सरणी पुन: असाइन करें
- एक स्थिर वस्तु को पुन: असाइन करें
- निरंतर सरणी के तत्वों को बदलें
- स्थिर वस्तु के गुणों को बदलें
पर तुम कर सकते हो:
लगातार सरणियाँ
आप एक स्थिर सरणी के तत्वों को बदल सकते हैं:
उदाहरण
// You can create a constant array:
const cars = ["Saab", "Volvo", "BMW"];
// You can change an element:
cars[0] = "Toyota";
// You can add an element:
cars.push("Audi");
लेकिन आप सरणी को पुन: असाइन नहीं कर सकते हैं:
उदाहरण
const cars = ["Saab", "Volvo", "BMW"];
cars = ["Toyota", "Volvo", "Audi"]; // ERROR
स्थिर वस्तु
आप एक स्थिर वस्तु के गुणों को बदल सकते हैं:
उदाहरण
// You can create a const object:
const car = {type:"Fiat", model:"500", color:"white"};
// You can change a property:
car.color = "red";
// You can add a property:
car.owner = "Johnson";
लेकिन आप वस्तु को पुन: असाइन नहीं कर सकते हैं:
उदाहरण
const car = {type:"Fiat", model:"500", color:"white"};
car = {type:"Volvo", model:"EX60", color:"red"}; //
ERROR
ब्राउज़र समर्थन
const
कीवर्ड इंटरनेट एक्सप्लोरर 10 या इससे पहले के संस्करण में समर्थित नहीं है ।
const
निम्न तालिका खोजशब्द के लिए पूर्ण समर्थन के साथ पहले ब्राउज़र संस्करणों को परिभाषित करती है :
Chrome 49 | IE 11 / Edge | Firefox 36 | Safari 10 | Opera 36 |
Mar, 2016 | Oct, 2013 | Feb, 2015 | Sep, 2016 | Mar, 2016 |
ब्लॉक स्कोप
के साथ एक चर घोषित
करना ब्लॉक स्कोपconst
के समान है ।let
इस उदाहरण में, ब्लॉक में घोषित x, ब्लॉक के बाहर घोषित किए गए x के समान नहीं है:
उदाहरण
const x = 10;
// Here x is 10
{
const x = 2;
// Here x is 2
}
// Here x is 10
आप जावास्क्रिप्ट स्कोप अध्याय में ब्लॉक स्कोप के बारे में अधिक जान सकते हैं ।
पुनर्घोषणा
var
किसी प्रोग्राम में कहीं भी JavaScript वैरिएबल को पुनर्घोषित करने की अनुमति है:
उदाहरण
var x = 2; // Allowed
var x = 3; // Allowed
x = 4; // Allowed
किसी मौजूदा var
या let
चर को const
उसी दायरे में पुन: घोषित करने की अनुमति नहीं है:
उदाहरण
var x = 2; // Allowed
const x = 2; // Not allowed
{
let x = 2; // Allowed
const x = 2; // Not allowed
}
{
const x = 2; // Allowed
const x = 2; // Not allowed
}
मौजूदा const
चर को उसी दायरे में पुन: असाइन करने की अनुमति नहीं है:
उदाहरण
const x = 2; // Allowed
x = 2; // Not allowed
var x = 2; // Not allowed
let x = 2; // Not allowed
const x = 2; // Not allowed
{
const x = 2; // Allowed
x = 2;
// Not allowed
var x = 2;
// Not allowed
let x = 2;
// Not allowed
const x = 2; // Not allowed
}
const
किसी अन्य क्षेत्र में, या किसी अन्य ब्लॉक में एक चर को पुन: घोषित करने की अनुमति है:
उदाहरण
const x = 2; // Allowed
{
const x = 3; // Allowed
}
{
const x = 4; // Allowed
}
कांस्ट उत्थापन
के साथ परिभाषित चर शीर्ष पर फहराएvar
जाते हैं और किसी भी समय प्रारंभ किए जा सकते हैं।
अर्थ: घोषित होने से पहले आप चर का उपयोग कर सकते हैं:
उदाहरण
यह ठीक है:
carName = "Volvo";
var carName;
यदि आप उत्थापन के बारे में अधिक जानना चाहते हैं, तो जावास्क्रिप्ट उत्थापन अध्याय का अध्ययन करें ।
के साथ परिभाषित चर const
भी शीर्ष पर फहराए जाते हैं, लेकिन प्रारंभ नहीं किए जाते हैं।
अर्थ: const
घोषित होने से पहले एक चर का उपयोग करने का परिणाम होगा
ReferenceError
:
उदाहरण
alert (carName);
const carName = "Volvo";