TypeScript Academy · पाठ

स्ट्रिंग और संख्यात्मक शाब्दिक प्रकार

शाब्दिक प्रकारों की सहायता से मानों को निश्चित स्ट्रिंग और संख्याओं तक सीमित करें।

पाठ 1, कुल 4 में से13 चरण

स्ट्रिंग और संख्यात्मक शाब्दिक प्रकार, CoddyKit पर TypeScript Academy का एक निःशुल्क पाठ है। यह 4 में से 1वाँ पाठ है। आप नीचे पूरा पाठ निःशुल्क पढ़ सकते हैं—फिर अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर के साथ ब्राउज़र में इसका व्यावहारिक अभ्यास कर सकते हैं। यह TypeScript Academy सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। TypeScript Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

लिटरल प्रकार क्या है

अधिकांश प्रकार मानों के एक समुच्चय का वर्णन करते हैं। string का अर्थ कोई भी स्ट्रिंग और number का अर्थ कोई भी संख्या है। लिटरल प्रकार इसे घटाकर एक निश्चित मान तक सीमित कर देता है।

'north' प्रकार केवल स्ट्रिंग 'north' की अनुमति देता है — किसी अन्य मान की नहीं। लिटरल प्रकारों से आप प्रकार प्रणाली में ही अनुमत मानों के सटीक, सीमित समुच्चयों का मॉडल बना सकते हैं।

let dir: 'north' = 'north';
console.log(dir);
// dir = 'south'; // Error: not assignable to type 'north'

स्ट्रिंग लिटरल यूनियन

अकेला लिटरल बहुत उपयोगी नहीं होता। कई लिटरल को | के साथ मिलाकर लिटरल का यूनियन बनाइए। विकल्पों के एक निश्चित समुच्चय का मॉडल बनाने का यह सामान्य तरीका है।

नीचे दिया गया Direction केवल चार निश्चित स्ट्रिंग में से एक हो सकता है।

type Direction = 'north' | 'south' | 'east' | 'west';

let heading: Direction = 'east';
console.log('Heading:', heading);

heading = 'west';
console.log('Now:', heading);

अमान्य मानों को अस्वीकार करना

लिटरल यूनियन की शक्ति यह है कि कंपाइलर अनुमत समुच्चय से बाहर की हर चीज़ को अस्वीकार कर देता है। टाइपो और अमान्य विकल्प रनटाइम बग के बजाय कंपाइल-समय की त्रुटियाँ बन जाते हैं।

type Direction = 'north' | 'south' | 'east' | 'west';

let heading: Direction = 'north';
console.log(heading);
// heading = 'up'; // Error: '"up"' is not assignable to 'Direction'

फ़ंक्शन पैरामीटर के रूप में लिटरल

ऐसे फ़ंक्शन पैरामीटर के लिए लिटरल यूनियन का उपयोग कीजिए जो केवल विशिष्ट मान स्वीकार करते हैं। कॉल करने वाले को स्वतः-पूर्णता मिलती है और वह कोई अमान्य मान भेज नहीं सकता।

type Direction = 'north' | 'south' | 'east' | 'west';

function move(dir: Direction): string {
  return 'Moving ' + dir;
}

console.log(move('south'));
// console.log(move('left')); // Error

संख्यात्मक लिटरल प्रकार

लिटरल प्रकार केवल स्ट्रिंग के लिए नहीं होते। आप निश्चित संख्याओं का भी उपयोग कर सकते हैं। इसका एक सामान्य उदाहरण छह-तरफ़ा पासा है, जिसका फलक मान 1 से 6 में से एक होना चाहिए।

type Dice = 1 | 2 | 3 | 4 | 5 | 6;

function roll(): Dice {
  return (Math.floor(Math.random() * 6) + 1) as Dice;
}

console.log('Rolled:', roll());

पैरामीटर में संख्यात्मक लिटरल

संख्यात्मक लिटरल यूनियन इनपुट को संख्याओं के एक निश्चित समुच्चय तक सीमित करते हैं — गुणवत्ता स्तर, HTTP-जैसे कोड या ग्रिड आकार जैसी चीज़ों के लिए बिल्कुल उपयुक्त।

type Quality = 1 | 2 | 3;

function setQuality(level: Quality): void {
  console.log('Quality set to', level);
}

setQuality(2);
// setQuality(5); // Error: 5 is not 1 | 2 | 3

स्ट्रिंग और संख्यात्मक लिटरल मिलाना

एक यूनियन अलग-अलग प्रकार के लिटरल को मिला सकता है। यह उन API के लिए उपयोगी है जो किसी नामित प्रीसेट या सीधे दिए गए मान में से किसी एक को स्वीकार करते हैं।

type Size = 'small' | 'large' | 0 | 100;

function resize(s: Size): void {
  console.log('Resizing to', s);
}

resize('small');
resize(100);

बूलियन लिटरल प्रकार

बूलियन के भी लिटरल प्रकार होते हैं: true और false मान होने के साथ-साथ प्रकार भी हैं। पूरा boolean प्रकार वास्तव में केवल true | false है।

type AlwaysOn = true;

let enabled: AlwaysOn = true;
console.log('Enabled:', enabled);
// enabled = false; // Error: false not assignable to true

लिटरल दस्तावेज़ीकरण को बेहतर बनाते हैं

लिटरल यूनियन दस्तावेज़ीकरण का भी काम करता है। type Status = 'idle' | 'loading' | 'done' पढ़ने वाला व्यक्ति तुरंत हर संभावित स्थिति जान जाता है — अनुमान लगाने की आवश्यकता नहीं रहती और पूरे कोड में बिखरी हुई जादुई स्ट्रिंग से बचा जा सकता है।

type Status = 'idle' | 'loading' | 'done';

function render(s: Status): string {
  return 'State is: ' + s;
}

console.log(render('loading'));

लिटरल को अन्य प्रकारों के साथ मिलाना

आप यूनियन में लिटरल प्रकारों को व्यापक प्रकारों के साथ मिला सकते हैं। एक सामान्य पैटर्न 'auto' | number है, जिसका अर्थ विशेष कीवर्ड 'auto' या कोई भी संख्या है।

type Width = 'auto' | number;

function setWidth(w: Width): void {
  console.log('Width:', w);
}

setWidth('auto');
setWidth(320);

नामित स्थिरांकों के रूप में लिटरल

लिटरल प्रकार नामित स्थिरांकों के साथ बहुत अच्छी तरह काम करते हैं। प्रकार को एक बार परिभाषित कीजिए, हर जगह पुनः उपयोग कीजिए और सुरक्षित रूप से पुनर्गठन कीजिए। कंपाइलर हर उपयोग में एकरूपता बनाए रखता है।

type Theme = 'light' | 'dark';

const DEFAULT_THEME: Theme = 'dark';

function applyTheme(t: Theme): void {
  console.log('Applying', t, 'theme');
}

applyTheme(DEFAULT_THEME);

त्वरित जाँच

लिटरल प्रकारों की अपनी समझ जाँचिए।

पुनरावलोकन: लिटरल प्रकार

आपने सीखा कि:

  • लिटरल प्रकार एक निश्चित मान का प्रतिनिधित्व करते हैं, जैसे 'north' या 6।
  • लिटरल को | के साथ मिलाने पर अनुमत मानों का सीमित यूनियन बनता है।
  • ये स्ट्रिंग, संख्या और बूलियन के लिए काम करते हैं और 'auto' | number जैसे व्यापक प्रकारों के साथ भी मिल सकते हैं।
  • फ़ंक्शन पैरामीटर के रूप में उपयोग करने पर ये स्वतः-पूर्णता देते हैं और कंपाइल-समय पर अमान्य इनपुट अस्वीकार करते हैं।

अगले चरण में हम देखेंगे कि TypeScript लिटरल और व्यापक प्रकारों के बीच कैसे निर्णय लेता है।

type Direction = 'north' | 'south' | 'east' | 'west';
type Dice = 1 | 2 | 3 | 4 | 5 | 6;

function describe(d: Direction, n: Dice): string {
  return 'Go ' + d + ' ' + n + ' steps';
}

console.log(describe('north', 3));
शुरुआत निःशुल्क

एआई शिक्षक के साथ TypeScript सीखें — निःशुल्क

अपने ब्राउज़र में वास्तविक कोड लिखें और चलाएँ, चौबीसों घंटे एआई शिक्षक से तुरंत सहायता पाएँ, और वेब या ऐप पर वहीं से शुरू करें जहाँ आपने छोड़ा था।

पाठ्यक्रम
101
पाठ
352

अक्सर पूछे जाने वाले प्रश्न

क्या “स्ट्रिंग और संख्यात्मक शाब्दिक प्रकार” पाठ निःशुल्क है?

हाँ—“स्ट्रिंग और संख्यात्मक शाब्दिक प्रकार” का पूरा पाठ यहाँ वेब पर निःशुल्क पढ़ा जा सकता है। इंटरैक्टिव अभ्यास (अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर) करने और TypeScript Academy पाठ्यक्रम का बाकी हिस्सा अनलॉक करने के लिए CoddyKit PRO लें। TypeScript Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

“स्ट्रिंग और संख्यात्मक शाब्दिक प्रकार” में मैं क्या सीखूँगा?

शाब्दिक प्रकारों की सहायता से मानों को निश्चित स्ट्रिंग और संख्याओं तक सीमित करें। आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ TypeScript Academy का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।

क्या TypeScript Academy शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?

पहले के अनुभव की आवश्यकता नहीं है। CoddyKit पर TypeScript Academy शुरुआती से लेकर उन्नत शिक्षार्थियों तक सभी के लिए व्यवस्थित किया गया है, इसलिए आप यहीं से या शुरुआत से सीखना शुरू कर सकते हैं और अपनी गति से आगे बढ़ सकते हैं। यह 4 में से 1वाँ पाठ है।

“स्ट्रिंग और संख्यात्मक शाब्दिक प्रकार” पाठ पूरा करने में कितना समय लगता है?

CoddyKit का अधिकांश पाठ लगभग 5–10 मिनट में पूरा हो जाता है। हर पाठ छोटा और संवादात्मक है, इसलिए आप लगातार प्रगति करते हैं और वेब या ऐप पर वहीं से सीखना जारी रख सकते हैं जहाँ आपने छोड़ा था।

क्या मैं इस TypeScript Academy पाठ में कोड लिख और चला सकता हूँ?

हाँ। हर TypeScript Academy पाठ में एक अंतर्निर्मित कोड संपादक शामिल है, जिससे आप सीधे अपने ब्राउज़र में वास्तविक कोड लिख और चला सकते हैं और तुरंत एआई प्रतिक्रिया पा सकते हैं—स्थानीय सेटअप की आवश्यकता नहीं है।

इस पाठ्यक्रम के सभी पाठ

  1. स्ट्रिंग और संख्यात्मक शाब्दिक प्रकार
  2. बूलियन शाब्दिक और शाब्दिक अनुमान
  3. as const के साथ const अभिकथन
  4. शाब्दिक प्रकारों को यूनियन में मिलाना
← TypeScript Academy पर वापस जाएँ