यहाँ कुछ चीजें हैं जो आप कर सकते हैं:
मॉड्यूलconst
से निर्यात करें । आपके उपयोग के मामले के आधार पर, आप बस:
export const constant1 = 33;
और उस मॉड्यूल से आयात करें जहां आवश्यक हो। या, अपने स्थिर विधि विचार पर निर्माण, तो आप एक की घोषणा कर सकता है static
प्राप्त एक्सेसर :
const constant1 = 33,
constant2 = 2;
class Example {
static get constant1() {
return constant1;
}
static get constant2() {
return constant2;
}
}
इस तरह, आपको कोष्ठक की आवश्यकता नहीं होगी:
const one = Example.constant1;
बैबल REPL उदाहरण
फिर, जैसा कि आप कहते हैं, चूँकि एक class
फ़ंक्शन के लिए सिंटैक्टिक शुगर है , इसलिए आप केवल एक गैर-योग्य संपत्ति जोड़ सकते हैं:
class Example {
}
Object.defineProperty(Example, 'constant1', {
value: 33,
writable : false,
enumerable : true,
configurable : false
});
Example.constant1; // 33
Example.constant1 = 15; // TypeError
यह अच्छा हो सकता है अगर हम ऐसा कुछ कर सकते हैं:
class Example {
static const constant1 = 33;
}
लेकिन दुर्भाग्य से यह वर्ग संपत्ति सिंटैक्स केवल ES7 प्रस्ताव में है, और तब भी यह const
संपत्ति को जोड़ने की अनुमति नहीं देगा ।