Page cover

1 - Introduction

เริ่มต้นกันกับ TypeScript ที่ทำให้ชีวิตการพัฒนาโปรแกรมด้วย JavaScript แบบเดิม ๆ สบายขึ้นเป็นสิบเท่า

😎 TypeScript มันคืออิหยังวะ ?

เออ นั่นสิ .. หลายคนอาจจะยังไม่เคยรู้จัก แต่อย่างน้อย ๆ ขอบอกเลยว่า "TypeScript" ไม่ใช่ของที่เหมาะกับมือใหม่ซักเท่าไหร่ ถ้าใครยังไม่เคยเขียนโปรแกรมซักภาษาจะให้ลองไปเริ่มดูก่อน (จะเป็น C, C++, Python, Java หรือ JavaScript ซักตัวนึงก็ได้)

เพราะอะไรหนะหรอ ? เพราะถ้าว่าตามตรง มันไม่ค่อยมีเนื้อหาที่รองรับผู้เริ่มต้นแบบไม่เคยเขียนโปรแกรมมาเท่าไหร่เลยยังไงหละ 5555 นั่นแหละครับ เหตุผลที่แท้ทรู

เนื่องจากว่าเจ้า TypeScript เนี้ย มันคือภาคต่อของ JavaScript ที่ถูกสนับสนุนโดยพี่ใหญ่อย่าง Microsoft นั่นเอง เพราะว่าปัญหาจุกจิกที่เจอใน JavaScript มันช่างเยอะเหลือเกิ๊นนนน และ TypeScriipt เกิดมาเพื่อทำให้อะไรเหล่านั้นมันง่ายขึ้นนั่นเอง

✅ ข้อดีก็ตามชื่อเลยครับ "Type" + "Script"

คือ ก่อนหน้านี้จะต้องบอกว่า การจัดการกับ Data Type ในการเขียนโปรแกรมภาษาปกติมันไม่ยากอะไรหรอก โดยเฉพาะตระกูลที่เป็น Static Type อยู่แล้ว เช่น C, C#, C++, Java หรือ อะไรก็แล้วแต่ที่ต้องประกาศประเภทข้อมูลมาก่อน

นึกถึง int x = 10; เห็นมั้ยว่าเราประกาศประเภทของข้อมูลในตัวแปรนั้น ๆ ไว้เลย

แต่เจ้า JavaScript เจ้ากรรมของเรามันแปลกประหลาดกว่าใครเขา คือ Type ของตัวแปร มันจะเป็นอะไรก็ได้ และ มันก็จะเปลี่ยนไปได้เรื่อย ๆ นั่นเอง 5555

ลองคิดดูว่าถ้าตอนแรกเราประกาศตัวแปรที่เก็บตัวเลข จำนวนเงินแบบ money ที่ตอนแรกอาจจะเป็น float (double) แล้วอยู่ ๆ มันสามารถกระโดดไปเป็น String หรือ Boolean ได้ดูคงแปลกพิลึก

🔥 อะ ถ้าใครยังนึกไม่ออก มาลองดูตัวอย่างกัน

จากเจ้าตัวอย่างนี้ถ้าหากเราต้องการประกาศตัวแปร myMoney เพื่อเก็บเงินในกระเป๋าของเราเป็นตัวเลขแล้ว ถ้าจะใช้งานเราก็สามารถใช้ได้แบบตัวเลขตัวไปที่ทำได้ ผ่านตัว Operator บวก ลบ คูณ หาร ต่าง ๆ ถูกมะ ?

// ประกาศตัวแปร myMoney เก็บตังของเราตามปกติ
let myMoney:number = 112.00
console.log(myMoney) //บรรทัดนี้ log จะออกมาเป็น 112 ให้

//แล้ว..ถ้าเราลองใส่ค่าใหม่ที่เป็นคนละประเภทลงไปหละ ?
myMoney = "Sawasdee" //บรรทัดนี้จะ Error ทันที
//พร้อมขึ่้นด่าเราว่า Type 'string' is not assignable to type 'number'.(2322)

ซึ่งถ้าเป็นภาษาทั่ว ๆ ไปเราจะประกาศทับไม่ได้ว่า เออ อยู่ ๆ ให้ข้อมูลใน myMoney เป็น String นะซึ่งรูปแบบ Static Type แบบนี้แหละ คือคุณสมบัติที่ทำให้ TypeScript มันปลอดภัย ไว้ใจได้ง่ายกว่า JavaScript แบบเดิม ๆ นั่นเอง

✅ ไม่ใช่แค่นั้น แต่ยังตรวจสอบ Code ช่วง Compile Time ได้ด้วยนะ !

ถ้าเราสามารถรู้ว่ามีอะไรจะระเบิด ก่อนที่มันจะระเบิดจริง ๆ เราจะได้รับมือได้ก่อนถูกต้องใช่มั้ยฮะ เจ้า TypeScript นี่มีคุณสมบัติเดียวกันเลย คือ "มันจะบอกคุณก่อนตอน Compile Time ว่าจะมี Error อะไรที่ดักจับได้บ้างนั่นเอง" ทำให้ลดปัญหาที่เจอตอน Runtime ไปได้เยอะมาก ๆ เลยหละครับคุณผู้ชมม

สร้างสรรค์เนื้อหาสุดเฟี้ยวฟ้าวโดย

🐲 Kittikorn Prasertsak (แอดเปรม) - CEO @ borntoDev Co., Ltd.

Facebook | YouTube | Instagram | TikTok

Last updated

Was this helpful?