🛡️
Advanced Types

Type Guards & Narrowing

typeof, instanceof, in
💡 Type, narrowing, EK, "SORTING, PROCESS" jaisa, hai — EK, BROAD, TYPE, (jaise, string | number) ko, CHECK, karके, EK, SPECIFIC, TYPE, tak, "NARROW" kiya, jaata, hai, JAISE, EK, MIXED, BOX, ke, items, ko, CATEGORY, ke, hisaab, se, SORT, karna.

typeof, operator, se, PRIMITIVE, types, (string, number, boolean) narrow, kiye, ja, sakte, HAIN. instanceof, se, CLASS, INSTANCES, ko, narrow, kiya, ja, sakta hai. in, operator, se, CHECK, kiya, ja, sakta hai, ki, EK, OBJECT, mein, EK, SPECIFIC, PROPERTY, EXIST, karti, hai.

Custom, type, GUARDS, (value is Type, SYNTAX, ke, saath) EK, FUNCTION, banaya, ja, sakta hai, JO, COMPLEX, narrowing, LOGIC, ko, REUSABLE, banata hai.

function process(value: string | number) {
  if (typeof value === "string") {
    return value.toUpperCase();   // yaha, TypeScript, JAANTA, hai, value, string, hai
  }
  return value.toFixed(2);   // yaha, number, hai
}

// Custom type guard:
interface Cat { meow(): void; }
function isCat(animal: any): animal is Cat {
  return typeof animal.meow === "function";
}
🛡️
Type, narrowing, EK, "SORTING, PROCESS" jaisa, hai — EK, BROAD, TYPE, (jaise, string | number) ko, CHECK, karके, EK, SPECIFIC, TYPE, tak, "NARROW" kiya, jaata, hai, JAISE, EK, MIXED, BOX, ke, items, ko, CATEGORY, ke, hisaab, se, SORT, karna.
1 / 2
⚡ झट से Recap
  • typeof/instanceof/in = built-in, type, narrowing, operators
  • Union types, ko, SPECIFIC, types, tak, narrow, karne, ke, liye, USE, hote, HAIN
  • Custom, type, guards, (value is Type) reusable, narrowing, logic, banaте, hain
इस page में (2 subtopics)

if (value), CHECK, karta hai, ki, VALUE, TRUTHY, hai — YE, null/undefined, ko, ELIMINATE, karta hai, LEKIN, EMPTY, STRING, YA, 0, ko, bhi, FALSY, treat, karta hai, JO, KABHI-KABHI, UNINTENDED, effects, de, sakta hai.

function process(value: string | null) {
  if (value) {
    value.toUpperCase();   // narrowed, string, hai — null, ELIMINATED
  }
}

asserts, keyword, se, EK, function, banaya, ja, sakta hai, JO, THROW, karta hai, AGAR, EK, CONDITION, false, hai — TypeScript, ISE, EK, "TYPE, ASSERTION" ki, tarah, TREAT, karta hai, function, CALL, ke, BAAD, ke, CODE, mein.

💡Tip: asserts, functions, VALIDATION, LOGIC, ko, REUSABLE, banaне, ke, liye, useful, HAIN, jabki, TYPE, NARROWING, ka, benefit, bhi, MAINTAIN, karte, hain.