any का Type
let variable: any = value;
Basic Any Type
any type से declared एक variable किसी भी तरह की values रख सकता है, और TypeScript उस value के kind को freely बदलने देती है बिना कभी एक type error report किए। Effectively, any एक variable को TypeScript की type checking से पूरी तरह opt out कर देता है।
उदाहरण: Basic Any Type
let data: any = "hello";
data = 42;
data = true;
console.log(data);
Any और Properties
TypeScript एक any-typed value पर property access की permission देती है बिना यह verify किए कि property असल में इस पर मौजूद है। वही flexibility है जो any को dangerous बनाती है: एक typo'd property name compile तो ठीक से हो जाएगा और सिर्फ runtime पर fail होगा, या silently undefined return करेगा।
उदाहरण: Any and Properties
let data: any = { name: "Aman" };
console.log(data.nmae); // typo compiles fine, but is undefined at runtime
Functions में Any
Function parameters को any typed किया जा सकता है जब input की shape genuinely पहले से नहीं पता, जैसे एक untyped third-party library से data।
फिर भी, एक ज़्यादा specific type, या unknown, चुनना almost always safer है एक बार data की actual shape पता चल जाए।
उदाहरण: Any in Functions
function processData(input: any): void {
console.log(input);
}
processData({ from: "third-party library" });
Any के Risks
एक codebase में हर जगह any उपयोग करना quietly उस value पर perform किए गए operations को verify करने की TypeScript की ability disable कर देता है, जो असली bugs को unnoticed slip होने दे सकता है।
Specific types, या unknown जब type genuinely vary करता है, पसंद करना वह safety net intact रखता है।
उदाहरण: Risks of Any
let value: any = "42";
let total: number = value + 8; // no error, but produces "428" not 50
console.log(total);
Any कब Avoid करें
जब भी आपको expected data type actually पता हो तो any avoid करें, क्योंकि type information देना आपसे proper types के साथ आने वाले editor autocomplete, inline error checking, और safe refactoring tools भी ले लेता है। any एक deliberate escape hatch होना चाहिए, default नहीं।
उदाहरण: When to Avoid Any
let count: number = 5; // specific type instead of any
console.log(count.toFixed(2)); // editor knows .toFixed exists on number
- Convenience के लिए
anyउपयोग करना जिससेdata.nmaeजैसा typo compile हो जाए और runtime पर सिर्फundefinedदे। - यह assume करना कि
let data: anyअब भी type checking पाता है, जबanyउस value और इससे derived सब कुछ के लिए checking off कर देता है। - Function parameters को
anyसे type करना एक specific type याunknownके बजाय, वे errors खोते हुए जो TypeScript ने catch किए होते।
Chapter Quiz — Complete all 11 topics to unlock
0/11 topics done
Complete these topics first: