TypeScript Academy · पाठ

typeof और ट्रुथीनेस नैरोइंग

प्रिमिटिव प्रकारों को सीमित करने के लिए typeof जाँच का उपयोग करें

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

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

स्वागत है

TypeScript सशर्त ब्लॉक के भीतर यूनियन प्रकारों को सीमित करता है। `typeof` जाँच और सत्यता जाँच सबसे सामान्य प्रकार-सीमित करने की तकनीकें हैं।

typeof से प्रकार सीमित करना

आदिम प्रकारों की जाँच के लिए `typeof` का उपयोग कीजिए। TypeScript typeof जाँच को समझता है और ब्लॉक के भीतर प्रकार को सीमित कर देता है।
function process(val: string | number) {
  if (typeof val === 'string') {
    return val.toUpperCase(); // val: string
  }
  return val.toFixed(2); // val: number
}

typeof के परिणाम

typeof 'string', 'number', 'boolean', 'bigint', 'symbol', 'undefined', 'object' या 'function' लौटाता है। ध्यान दें: typeof null === 'object' — यह JavaScript की एक विचित्रता है।
typeof 'hello'    // 'string'
typeof 42         // 'number'
typeof true       // 'boolean'
typeof null       // 'object' (quirk!)
typeof undefined  // 'undefined'

सत्यता से प्रकार सीमित करना

JavaScript के मान सत्य या असत्य होते हैं। TypeScript सत्यता जाँच के भीतर `T | null | undefined` को `T` तक सीमित कर देता है।
function greet(name: string | null) {
  if (name) {
    console.log('Hello, ' + name); // name: string
  } else {
    console.log('Hello, stranger');
  }
}

असत्य मान

JavaScript में असत्य मान हैं: false, 0, '', null, undefined, 0n, NaN। जाँच सफल होने पर सत्यता के आधार पर प्रकार सीमित करना इन मानों को प्रकार से हटा देता है।

बूलियन रूपांतरण से प्रकार सीमित करना

`Boolean(val)` या `!!val` का उपयोग करने पर भी null और undefined प्रकार से हट जाते हैं।
const items: (string | null)[] = ['a', null, 'b', null];
const strings = items.filter((x): x is string => x !== null);

निषेधित शर्तें

TypeScript else शाखाओं में और जल्दी return करने के बाद भी प्रकार सीमित करता है।
function getLength(val: string | null): number {
  if (!val) return 0; // early return narrows
  return val.length;  // val: string here
}

typeof को समानता के साथ मिलाना

typeof के साथ सख्त समानता (===) मिलाने पर प्रकार अधिक सटीक रूप से सीमित होता है।
function accept(x: string | number | boolean) {
  if (typeof x === 'string' || typeof x === 'number') {
    console.log(x); // x: string | number
  }
}

typeof से null तक सीमित नहीं कर सकते

null तक प्रकार सीमित करने के लिए सख्त समानता `=== null` का उपयोग कीजिए। सत्यता जाँच null और अन्य असत्य मानों में अंतर नहीं कर सकती।
function check(x: string | null | 0) {
  if (x === null) { /* x: null */ }
  else if (x === 0) { /* x: 0 */ }
  else { /* x: string */ }
}

लूप में प्रकार सीमित करना

TypeScript केवल if कथनों में ही नहीं, बल्कि लूप के मुख्य भागों के भीतर भी प्रकार सीमित करता है।

नियंत्रण प्रवाह विश्लेषण

TypeScript नियंत्रण प्रवाह विश्लेषण का उपयोग करके आपके कोड के प्रत्येक बिंदु पर प्रकार को ट्रैक करता है। असाइनमेंट भी प्रकार को अपडेट करते हैं।
let x: string | number = 'hello';
// x: string
x = 42;
// x: number

त्वरित जाँच

`if (typeof val === 'string')` के भीतर `val` का प्रकार क्या है, यदि उसका प्रकार `string | number` था?

पुनरावलोकन

TypeScript में typeof जाँच और सत्यता शर्तें यूनियन प्रकारों को सीमित करती हैं। TypeScript प्रत्येक बिंदु पर प्रकारों को ट्रैक करने के लिए नियंत्रण प्रवाह विश्लेषण का उपयोग करता है। null/undefined जाँचों के लिए सख्त समानता का उपयोग कीजिए।
शुरुआत निःशुल्क

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

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

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

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

क्या “typeof और ट्रुथीनेस नैरोइंग” पाठ निःशुल्क है?

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

“typeof और ट्रुथीनेस नैरोइंग” में मैं क्या सीखूँगा?

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

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

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

“typeof और ट्रुथीनेस नैरोइंग” पाठ पूरा करने में कितना समय लगता है?

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

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

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

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

  1. typeof और ट्रुथीनेस नैरोइंग
  2. instanceof और in नैरोइंग
  3. उपयोगकर्ता-परिभाषित प्रकार-रक्षक फ़ंक्शन
  4. never से पूर्णता की जाँच
← TypeScript Academy पर वापस जाएँ