Skip to content
GitHub

ဘာကြောင့် အဆင့်မြင့် TypeScript features တွေလိုအပ်တာလဲ?

JavaScript ရဲဲ့ မထင်မှတ်ထားတဲ့ ပြဿနာ

Section titled “JavaScript ရဲဲ့ မထင်မှတ်ထားတဲ့ ပြဿနာ”

ကျွန်တော်တို့ Code တွေ ရေးကြတယ်၊ Program တွေ တည်ဆောက်ကြတယ်။ အစပိုင်းမှာတော့ JavaScript က အရမ်းလွယ်တယ်။ လိုချင်တာ အကုန် လိုက်လျောညီထွေ လုပ်လို့ရတယ်။ ဒါပေမယ့် တစ်ခါတလေကျတော့ ဒီ လိုက်လျောညီထွေရှိတာကြီးကပဲ ပြဿနာ ပြန်ဖြစ်နေတတ်တယ်။

ကျွန်တော်တို့ Code တွေ ရေးပြီးပြီ၊ အားလုံး မှန်တယ် ထင်နေတာပဲ။ ဒါပေမယ့် Program ကို Run လိုက်တဲ့အခါကျမှ… “ဟင်၊ ဒီနေရာမှာ ဘာမှ မရှိပါလား?” “ဒီလို ဖြစ်သွားရတာလား?” ဆိုပြီး မထင်ထားတဲ့ Error တွေ ပေါ်လာတတ်တယ်။ Data ရဲ့ ပုံစံ မမှန်တာတို့၊ မှားယွင်းတဲ့ အချက်အလက် ထည့်သုံးမိတာတို့ပေါ့။ ဒီလိုမျိုး Code Run နေရင်း ရုတ်တရက် ပေါ်လာတဲ့ Error တွေက တကယ် ခေါင်းခဲစေတယ်။ အထူးသဖြင့် Code တွေ အများကြီး ဖြစ်လာပြီဆို ပိုဆိုးတာပေါ့။

ဒီလိုမျိုး Run တဲ့အချိန်ကျမှ Error တက်တာကို ဒီ Code လေးနဲ့ နမူနာ ကြည့်ရအောင်ပါ။

let userData = { name: "Alice" /* age မပါဘူးနော် */ };
function greetUser(user) {
// user ထဲမှာ name ရှိတယ်လို့ ယူဆပြီး ရေးလိုက်တာ...
console.log(`Hello, ${user.name.toUpperCase()}!`);
// ဟာ... user ထဲက name က မပါလာတော့ Error တက်ပြီ!
}
greetUser(userData);
greetUser(null); // သေချာပေါက် crash မှာပဲ

အပေါ်က code ကို run ကြည့်ပါက …

JS error

ဒီ Code လေးမှာဆိုရင် userData ထဲမှာ name ပဲပါပြီး age မပါတာတို့၊ ဒါမှမဟုတ် greetUser Function ကို null ဆိုတဲ့ ဘာမှ မဟုတ်တဲ့ Data နဲ့ ခေါ်လိုက်တာတို့ကြောင့် Program Run ရင်း Error တက်သွားတာကို ပြထားတယ်။ ဘာလို့လဲဆိုတော့ JavaScript က Code Run တဲ့အချိန်ကျမှ ‘အော်… ဒီ data က ဒီလို ပုံစံပါလား’ ဆိုတာ သိရတာကိုး။