# TS - Never

<figure><img src="https://4062235122-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F7tekcoDYDaKhlNreT5uK%2Fuploads%2FeGbya5fjCRRKvCgGj4GQ%2FTypescript%20Never%20Syntax.png?alt=media&#x26;token=17ca4827-fe46-4717-9380-cf2aedc31435" alt=""><figcaption></figcaption></figure>

`let neverData : never;` ရေးသားနည်းနဲ့ `never` Type တွေကို သတ်မှတ် လို့ရပါတယ် ။&#x20;

ထူးခြားတာက  Never Type ထဲကို ဘယ်တန်ဖိုး အမျိုးအစားမှ Assign လုပ်လို့တော့မရပါဘူး ။

<figure><img src="https://4062235122-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F7tekcoDYDaKhlNreT5uK%2Fuploads%2FlzAoghkTvFAy3QhdPJD5%2FTypescript%20Never%20Data.png?alt=media&#x26;token=7558d3d2-bb62-4571-adf6-10a87f1910c1" alt=""><figcaption></figcaption></figure>

ဒါဆို Assign လို့လည်းမရဘဲ ဘာလို့ `never` type ကို လေ့လာနေရတာတုန်းလို့ ပြောစရာရှိလာပြီ ။ ကျွန်တော်တို့ကိုယ်တိုင် Assign မလုပ်ပေမယ့်လည်း အခြား အခြေအနေတွေမှာ `never` type တွေကို တွေ့လာနိုင်ပါတယ် ။ ဥပမာ Error Throw လိုက်တဲ့ Function ရဲ့ Return Value Type က  `never`  ဖြစ်ပါတယ် ။

<figure><img src="https://4062235122-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F7tekcoDYDaKhlNreT5uK%2Fuploads%2FkfRjEaks2m4iannVRE52%2FTypeScript%20Never%20Throw.png?alt=media&#x26;token=a8988429-f681-42bf-83c9-619f72d1e684" alt=""><figcaption></figcaption></figure>

ဘယ်တော့ မှ မပြီးဆုံးနိုင်တဲ့ `while` loop ကို true conditional ထည့်လိုက်တဲ့ function မျိုးမှာလည်း `never` type ကိုရရှိလာနိုင်ပါတယ် ။

<figure><img src="https://4062235122-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F7tekcoDYDaKhlNreT5uK%2Fuploads%2FBkMAS3e3XpBIeXBYtbcg%2FTypeScript%20Never%20Infinite%20Loop.png?alt=media&#x26;token=d05bdd46-d627-4246-bec4-747096c27304" alt=""><figcaption></figcaption></figure>

နောက်ဆုံးတစ်ခုကတော့ Switch နဲ့ စစ်တဲ့အခါ default scope ရောက်တဲ့အခါ စစ်လိုက်တဲ့ Data က never type အဖြစ် Type Cast ဖြစ်သွားတာမျိုးကို တွေ့ရမှာပါ ။
