Thuta Learning
TypeScript
IntermediateProgrammingintermediate

Literal Types, as const & satisfies

TypeScriptသင်ခန်းစာ 12

ဒီခန်းပြီးရင် ဘာတတ်သွားမလဲ

  • Literal Types, as const & satisfies ရဲ့ runtime value နဲ့ compile-time type ဆက်နွယ်မှုကိုရှင်းပြနိုင်ရန်
  • Strict mode တွင် unsafe input နဲ့ edge cases စမ်းနိုင်ရန်
  • Maintainable TypeScript contracts ရေးနိုင်ရန်

Literal Types, as const & satisfies ကို annotation syntax အဖြစ်သာမမြင်ဘဲ JavaScript runtime value များ၏ဖြစ်နိုင်သော set, control-flow narrowing, nullability နဲ့ exhaustive checking ကိုဖော်ပြသော model အဖြစ်နားလည်ပါ။ Inference ကိုဦးစားပေးပြီး unsafe input ကို unknown မှစပါ။

ပိုပြီးနားလည်ထားရမယ့် အချက်

Literal Types, as const & satisfies ကို annotation syntax အဖြစ်သာမမြင်ဘဲ JavaScript runtime value များ၏ဖြစ်နိုင်သော set, control-flow narrowing, nullability နဲ့ exhaustive checking ကိုဖော်ပြသော model အဖြစ်နားလည်ပါ။ Inference ကိုဦးစားပေးပြီး unsafe input ကို unknown မှစပါ။

လက်တွေ့မှာ ဘယ်လိုအသုံးချမလဲ

Literal Types, as const & satisfies example ကို strict mode ဖြင့် type-check လုပ်ပြီး valid, null/undefined, malformed API data, union variant အသစ်နဲ့ module boundary cases စမ်းပါ။ Type error ကို assertion သို့ any ဖြင့်ပိတ်မထားဘဲ contract သို့ validation ကိုပြင်ပါ။

ဒီသင်ခန်းစာပြီးရင်

typescript
type Route = { path: string; secure: boolean };

const routes = {
  home: { path: '/', secure: false },
  account: { path: '/account', secure: true },
} as const satisfies Record<string, Route>;

const accountPath = routes.account.path; // '/account'
You should see
Object ကိုစစ်ပေးသလို precise literal types များလည်းမပျောက်ပါ။

ကိုယ်တိုင်စမ်းကြည့်ရန်

Literal Types, as const & satisfies example ကို strict mode ဖြင့် type-check လုပ်ပြီး valid, null/undefined, malformed API data, union variant အသစ်နဲ့ module boundary cases စမ်းပါ။ Type error ကို assertion သို့ any ဖြင့်ပိတ်မထားဘဲ contract သို့ validation ကိုပြင်ပါ။

Type Safety သတိပေးချက်

TypeScript compile အောင်ရုံဖြင့် API data နဲ့ runtime behavior မှန်ပြီဟုယူဆခြင်း။

TypeScript HandbookTypeScript

ဒီနေရာမှာ လူအများမှားတတ်တယ်

  • TypeScript compile အောင်ရုံဖြင့် API data နဲ့ runtime behavior မှန်ပြီဟုယူဆခြင်း။
  • Error ကို any, as သို့ non-null assertion ဖြင့်ဖျောက်ပြီး contract မပြင်ခြင်း။

လက်တွေ့လေ့ကျင့်ခန်း

Literal Types, as const & satisfies example ကို strict mode ဖြင့် type-check လုပ်ပြီး valid, null/undefined, malformed API data, union variant အသစ်နဲ့ module boundary cases စမ်းပါ။ Type error ကို assertion သို့ any ဖြင့်ပိတ်မထားဘဲ contract သို့ validation ကိုပြင်ပါ။

You'll know it worked when: Object ကိုစစ်ပေးသလို precise literal types များလည်းမပျောက်ပါ။

Literal Types, as const & satisfies | Thuta Learning