JavaScript
Object
Property key/value
เรียนรู้ว่า property คืออะไร ตั้งชื่อ key แบบไหนได้บ้าง ใส่ value ชนิดไหนก็ได้
Property คือคู่ key กับ value ภายใน object
Property คือข้อมูลหนึ่งชุดที่เก็บไว้ใน object แต่ละ property ประกอบด้วยสองส่วน: • **key** — ชื่อที่ใช้อ้างอิงข้อมูล • **value** — ค่าจริงที่เก็บไว้
แต่ละบรรทัดที่มี `:` คือหนึ่ง property คั่นแต่ละ property ด้วย `,`
const user = {
name: "สมชาย", // key: name, value: "สมชาย"
age: 30, // key: age, value: 30
isAdmin: false, // key: isAdmin, value: false
};object หนึ่งชุดมีได้หลาย property และแต่ละ property ต่างกันได้ทั้ง key และชนิดของ value
Key — ตั้งชื่อแบบ identifier และแบบ string
Key มีสองรูปแบบหลัก: **Identifier key** — เขียนเหมือนชื่อตัวแปร ไม่มีช่องว่าง ไม่ขึ้นต้นด้วยตัวเลข **String key** — ล้อมด้วยเครื่องหมายคำพูด ใส่ช่องว่างหรืออักขระพิเศษได้
identifier key ใช้บ่อยกว่า — string key ใช้เมื่อ key มีช่องว่างหรืออักขระพิเศษ
const profile = {
name: "สมหญิง", // identifier key
age: 25, // identifier key
"full name": "สมหญิง ใจดี", // string key (มีช่องว่าง)
"เบอร์โทร": "080-111-2222", // string key (ภาษาไทย)
};| รูปแบบ | ตัวอย่าง | ข้อกำหนด |
|---|---|---|
| Identifier key | `name`, `firstName`, `_id` | ตัวอักษร ตัวเลข `_` `$` — ห้ามขึ้นต้นด้วยตัวเลข ห้ามมีช่องว่าง |
| String key | `"full name"`, `"เบอร์โทร"` | ใส่อะไรก็ได้ภายในเครื่องหมายคำพูด |
Value — ใส่ค่าอะไรก็ได้
value ของ property เป็นค่า JavaScript ชนิดไหนก็ได้ — string, number, boolean, array, object, `null` หรือฟังก์ชัน รวมถึงค่าพิเศษอย่าง `null` — ซึ่งหมายถึง "ตั้งใจให้ว่าง" หรือ "ยังไม่มีค่า" — ก็ใช้เป็น value ได้
value เป็นชนิดไหนก็ได้ — รวมถึง array, object ซ้อน, และ null
const item = {
title: "คอมพิวเตอร์", // string
price: 29999, // number
available: true, // boolean
tags: ["tech", "sale"], // array
specs: { ram: 16 }, // object ซ้อนกัน
discount: null, // ยังไม่ได้กำหนดส่วนลด
};
console.log(item);
// {
// title: "คอมพิวเตอร์",
// price: 29999,
// available: true,
// tags: ["tech", "sale"],
// specs: { ram: 16 },
// discount: null
// }