← Back to TypeScript Course | Chapter 2: Basic Types | Lesson 6 of 11

any का Type

any type एक value के लिए ज़्यादातर TypeScript type checking disable कर देता है। यह unknown legacy data के साथ काम करते समय useful हो सकता है, लेकिन इसे carefully उपयोग किया जाना चाहिए क्योंकि यह TypeScript के कई benefits हटा देता है।
Syntax
typescript
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

typescript
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

typescript
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

typescript
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

typescript
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

typescript
let count: number = 5; // specific type instead of any
console.log(count.toFixed(2)); // editor knows .toFixed exists on number
Related Topics
{# common_mistakes/chapter_summary/browser_support: on Hindi pages the view already swaps in the hi_ translation fields (or blanks these out if untranslated), so this renders correctly for both languages without a lang_code check here. #}
आम गलतियां
  1. Convenience के लिए any उपयोग करना जिससे data.nmae जैसा typo compile हो जाए और runtime पर सिर्फ undefined दे।
  2. यह assume करना कि let data: any अब भी type checking पाता है, जब any उस value और इससे derived सब कुछ के लिए checking off कर देता है।
  3. 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:

Login to run this code

C/C++/Java/PHP execution requires a free account. Your code is saved — you'll land right back in the editor after logging in.