Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> JavaScript

ความแตกต่างระหว่าง JavaScript Primitive Data Types และ Objects

ก่อนจะพูดถึงความแตกต่าง เรามาทำความเข้าใจ Primitive Data Types ก่อน Primitive กำหนดค่าที่ไม่เปลี่ยนแปลงได้ (immutable) และถูกนำเข้ามาโดยมาตรฐาน ECMAScript ล่าสุด

JavaScript ทำงานกับ primitive data types 3 ชนิดหลัก:

  • Numbers (เช่น 3, 310.20)
  • Strings (เช่น "This text string")
  • Boolean (true หรือ false)

JavaScript ยังกำหนด trivial data types อีกสองชนิด คือ null และ undefined ซึ่งแต่ละตัวมีค่าเพียงค่าเดียว นอกเหนือจาก primitive types แล้ว JavaScript ยังรองรับ composite data type ที่เรียกว่า Object

Objects

ใน JavaScript ออบเจกต์ถือเป็นชุดของคุณสมบัติ (properties) ระบุคุณสมบัติด้วยคีย์-ค่า (key-value) มี 2 ประเภท:

Data Property

เชื่อมโยงคีย์กับค่า

ตัวอย่างเปรียบเทียบ String แบบ primitive กับ object:

Primitive Datatype:

var str = "Demo string!";

Object:

var str = new String("Demo string!");

Accessor Property

เชื่อมโยงคีย์กับฟังก์ชัน accessor (getter/setter) ใช้สำหรับเก็บค่า

ความแตกต่างสำคัญ

ลักษณะPrimitiveObject
MutabilityImmutableMutable
ComparisonBy valueBy reference
MemoryStackHeap
Methodsไม่มี (auto-boxing)มีเมธอดของตัวเอง