แนะนำรูปแบบ JSON ใน JavaScript
บางครั้งก็มีความจำเป็นต้องแปลงโครงสร้างข้อมูลบางอย่าง เช่น อาร์เรย์หรือออบเจกต์ ให้เป็นสตริง สิ่งนี้อาจจำเป็น เช่น เพื่อส่ง โครงสร้างนี้ผ่านอินเทอร์เน็ต หรือเพื่อบันทึก ลงในที่เก็บข้อมูลบางแห่ง
เพื่อการนี้ใน JavaScript จึงได้มีการคิดค้นรูปแบบพิเศษขึ้นมา ชื่อว่า JSON
รูปแบบ JSON สามารถมีโครงสร้างหนึ่งในสองแบบ คือ อาร์เรย์ หรือ ออบเจกต์ที่มีคู่ คีย์-ค่า อาร์เรย์และออบเจกต์ถูกสร้างขึ้น เช่นเดียวกับใน JavaScript แต่มีข้อจำกัด: สตริงทั้งหมดและคีย์สตริงของออบเจกต์ต้อง อยู่ในเครื่องหมายอัญประกาศคู่
ตัวอย่างเช่น ลองสร้างสตริงที่บรรจุ อาร์เรย์ในรูปแบบ JSON:
let json = '[1, 2, 3, 4, 5, "a", "b"]';
และตอนนี้สร้างสตริงที่บรรจุออบเจกต์ ในรูปแบบ JSON:
let json = `{
"a": "aaa",
"b": "bbb",
"c": "ccc",
"111": "ddd"
}`;
สามารถผสมผสานโครงสร้างเหล่านี้ในลำดับใดก็ได้:
let json = `[
{
"a": "aaa",
"b": "bbb"
},
{
"c": "ccc",
"d": "ddd"
}
]`;
แตกต่างจากโครงสร้างใน JavaScript, ใน JSON ไม่อนุญาตให้มีเครื่องหมายจุลภาคหลังสมาชิกสุดท้าย ของอาร์เรย์และออบเจกต์:
let json = '[1, 2, 3, 4, 5,]'; // ไม่ถูกต้อง
let json = '[1, 2, 3, 4, 5]'; // ถูกต้อง
นอกจากตัวเลขและสตริงแล้ว ค่าอื่นๆ ที่สามารถเป็นสมาชิกได้
คือ ค่า true,
false และ null:
let json = '[null, true, false]';
กำหนดอาร์เรย์:
let arr = [1, 2, 3, 'a', 'b', 'c'];
แปลงอาร์เรย์นี้เป็นสตริง ในรูปแบบ JSON ด้วยตนเอง
กำหนดออบเจกต์:
let obj = {
a: 1,
b: 2,
c: 'eee',
d: true,
};
แปลงออบเจกต์นี้เป็นสตริง ในรูปแบบ JSON ด้วยตนเอง
กำหนดออบเจกต์:
let obj = {
a: ['a', 'b', 'c',],
b: '111',
c: 'eee',
};
แปลงออบเจกต์นี้เป็นสตริง ในรูปแบบ JSON ด้วยตนเอง