TypeScript Academy · पाठ

सख्ती के फ़्लैग

सुरक्षित कोड के लिए सख्ती चालू करें: strict, noImplicitAny, exactOptionalPropertyTypes, noUncheckedIndexedAccess।

पाठ 1, कुल 3 में से8 चरण

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

परिचय

लक्ष्य: मुख्य strictness फ़्लैग सक्षम करें और उन्हें समझें। ये विकल्प त्रुटियों को पहले पकड़ते हैं और आईडीई संकेत बेहतर बनाते हैं।

  • strict
  • noImplicitAny
  • exactOptionalPropertyTypes
  • noUncheckedIndexedAccess

strict + noImplicitAny

strict जाँचों का एक समूह सक्रिय करता है; noImplicitAny उन प्रकाररहित पैरामीटर और चर को प्रतिबंधित करता है जिनका डिफ़ॉल्ट प्रकार any होता है।

// tsconfig.json (excerpt)
{
  "compilerOptions": {
    "strict": true,
    "noImplicitAny": true
  }
}

// Effect demo
function sum(a, b) { // Error: implicit any
  return a + b;
}

function sumOk(a: number, b: number): number {
  return a + b;
}

exactOptionalPropertyTypes

exactOptionalPropertyTypes अनुपस्थित और मौजूद लेकिन undefined के बीच अंतर करता है—API मॉडलिंग के लिए बहुत उपयोगी।

// exactOptionalPropertyTypes: true
interface User { name?: string }

const u1: User = {};          // ok: name is absent
const u2: User = { name: undefined }; // Error when exactOptionalPropertyTypes is true

function greet(u: User) {
  if ("name" in u) {
    // name exists but could be undefined without this flag
    console.log("Hi", u.name);
  }
}

इंडेक्स की गई पहुँच (सरणी)

अब सरणियों को इंडेक्स करने पर T | undefined प्राप्त होता है। रनटाइम क्रैश से बचने के लिए मान का उपयोग करने से पहले जाँच करें।

// noUncheckedIndexedAccess: true
const xs: number[] = [1,2,3];
const maybe = xs[5]; // type: number | undefined
if (maybe !== undefined) {
  console.log(maybe.toFixed(0));
}

इंडेक्स की गई पहुँच (मैप)

ऑब्जेक्ट और Record<K,V> से इंडेक्स करने के परिणाम में तब तक undefined शामिल रहता है, जब तक आप उपस्थिति सिद्ध न कर दें।

// Also affects records/maps
const byId: Record<string, { id: string }> = {};
const item = byId["x"]; // { id: string } | undefined
if (item) {
  console.log(item.id);
}

सख्त प्रीसेट

सख्त मोड से शुरू करें और केवल आवश्यकता होने पर इसे ढीला करें। ये फ़्लैग नए कोड में न्यूनतम शोर के साथ सामान्य बग रोकते हैं।

// tsconfig.json (excerpt)
{
  "compilerOptions": {
    "strict": true,
    "noImplicitAny": true,
    "exactOptionalPropertyTypes": true,
    "noUncheckedIndexedAccess": true
  }
}

इंडेक्स की गई पहुँच जाँच

त्वरित जाँच: noUncheckedIndexedAccess क्या बदलता है?

पुनरावलोकन

पुनरावलोकन: strict अधिक सुरक्षित डिफ़ॉल्ट सक्षम करता है; noImplicitAny अनुपस्थित प्रकार ढूँढ़ता है; exactOptionalPropertyTypes वैकल्पिक फ़ील्ड का सटीक मॉडल बनाता है; noUncheckedIndexedAccess उपस्थिति जाँच अनिवार्य करता है।

शुरुआत निःशुल्क

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

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

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

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

क्या “सख्ती के फ़्लैग” पाठ निःशुल्क है?

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

“सख्ती के फ़्लैग” में मैं क्या सीखूँगा?

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

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

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

“सख्ती के फ़्लैग” पाठ पूरा करने में कितना समय लगता है?

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

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

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

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

  1. सख्ती के फ़्लैग
  2. Target, lib, module, JSX सेटिंग
  3. प्रोजेक्ट रेफ़रेंस (परिचय)
← TypeScript Academy पर वापस जाएँ