ชนิดข้อมูล Primitive vs Non-Primitive ใน JavaScript
ชนิดของข้อมูล หรือ Data type คือชนิดของข้อมูลที่จัดว่าเป็นองค์ประกอบที่สำคัญในการประมวลผลโปรแกรม ชนิดของข้อมูลใช้สำหรับกำหนดวิธีที่คอมพิวเตอร์จัดเก็บและจัดการกับข้อมูลในหน่วยความจำ เพื่อให้โปรแกรมทำงานได้อย่างมีประสิทธิภาพ บทความนี้เราจะมากล่าวถึงชนิดของข้อมูล Primitive และ Non-Primitive ใน JavaScript
ชนิดของข้อมูล แบ่งออกเป็น 2 ประเภท
-
Primitive Types คือ ชนิดของข้อมูลพื้นฐานเช่น ตัวเลข ตัวอักษร หรือทศนิยม เป็นต้น จะถูกจัดเก็บไว้ในหน่วยความจำโดยตรงและเมื่อกำหนดชนิดของข้อมูลเเล้วจะไม่ถูกเปลี่ยนแปลง
-
Non-primitive types หรืออีกชื่อหนึ่งว่า Reference types คือชนิดข้อมูลแบบอ้างอิง และมีความซับซ้อนมากกว่าชนิดข้อมูลแบบ Primitive Types เช่น array และ object เป็นต้น ต่างจากชนิดข้อมูล Primitive มีลักษณะเป็นไดนามิกคือสามารถเปลี่ยนแปลงได้
Primitive Types แบ่งออกเป็น 6 ประเภท
-
Undefined
ตัวแปรที่เป็นค่า Undefined ใน JavaScript นั้นหมายถึงเป็นตัวแปรที่ประกาศเอาไว้แต่ไม่ได้มีการกำหนดค่าใด ๆ
-
Null
ตัวแปรที่เป็นค่า null ใน JavaScript นั้นหมายถึงเป็นตัวแปรที่ไม่มีค่าใดๆเลย ไม่เท่ากับ 0 ไม่เท่ากับสตริงว่าง (“ ”) หรือ (‘’) และไม่สามารถเอาไปใช้ในการคำนวณได้ แต่สามารถไปใช้ประโยชน์ในการเช็ตค่าได้
-
Boolean
ใช้เก็บข้อมูล 2 ค่าคือ true และ false ใช้สำหรับคำสั่งแบบมีเงื่อนไข
-
Number
คือชนิดข้อมูล Number มีทั้งจำนวนเต็มและตัวเลขทศนิยม
-
String
คือชนิดข้อมูลที่ใช้ในการเก็บตัวอักษร
-
Symbol
คือชนิดข้อมูลที่มีค่าไม่ซ้ำกันและไม่เปลี่ยนรูป สามารถใช้เป็น key ของ Object ได้
ตัวอย่าง Non-primitive types
1. Object
คือประเภทข้อมูลที่เก็บข้อมูลในรูปแบบของ Key และ Value (ที่เรียกว่า Property) โดยที่ Key นั้นจะเป็น String ส่วน Value สามารถเป็นข้อมูลประเภทใดๆ
2. Array
คือประเภทข้อมูลแบบคอลเลคชั่นที่เก็บแบบชุดลำดับซึ่งสามารถเก็บข้อมูลได้มากกว่าหนึ่งค่าภายในตัวแปรหรือออบเจ็คที่เรียกว่าอาเรย์ ในภาษา JavaScript นั้นอาเรย์เป็นออบเจ็คจากคลาส Array ซึ่งมี Property และเมธอดเป็นจำนวนมากที่เราสามารถใช้เพื่อจัดการกับอาเรย์ เราสามารถใช้อาเรย์เก็บข้อมูลอื่นได้ทุกประเภทรวมถึงตัวมันเอง
3. Function
คือประเภทข้อมูลที่สร้างขึ้นเพื่อให้โปรแกรมทำงานอย่างใดอย่างหนึ่ง สามารถรับ input หรือข้อมูลได้ และสามารถใช้ได้อีกทุกครั้งที่ต้องการให้โปรแกรมทำงานแบบเดิม (Reusable)
สรุป
จากบทความที่กล่าวมาเป็นความรู้พื้นฐานในการเขียนโปรแกรม เราได้รู้จักชนิดของข้อมูล Primitive และ Non-primitive สามารถนำมาช่วยในการตัดสินใจเกี่ยวกับการจัดเก็บและจัดการข้อมูลในแอปพลิเคชัน การจะเขียนโปรแกรมได้ดีและมีประสิทธิภาพนั้น เราจะต้องมีความเข้าใจในชนิดของข้อมูลทั้งสองประเภท
หวังว่าบทความนี้จะเป็นประโยชน์กับผู้อ่านทุกท่านไม่มากก็น้อย หากต้องการทราบข้อมูลพื้นฐานอื่น ๆในการเขียนโปรแกรม เช่น วิธีการ Setup an environment เบื้องต้นสำหรับการพัฒนาโปรเเกรม สามารถตามไปอ่านที่ลิงก์ได้เลย
แหล่งที่มา
JavaScript data types and data structures - JavaScript
Primitive and Non-primitive data-types in JavaScript