แนะนำรูปแบบ JSON ใน JavaScript

บางครั้งก็มีความจำเป็นต้องแปลงโครงสร้างข้อมูลบางอย่าง เช่น อาร์เรย์หรือออบเจกต์ ให้เป็นสตริง สิ่งนี้อาจจำเป็น เช่น เพื่อส่ง โครงสร้างนี้ผ่านอินเทอร์เน็ต หรือเพื่อบันทึก ลงในที่เก็บข้อมูลบางแห่ง

เพื่อการนี้ใน JavaScript จึงได้มีการคิดค้นรูปแบบพิเศษขึ้นมา ชื่อว่า JSON

รูปแบบ JSON สามารถมีโครงสร้างหนึ่งในสองแบบ คือ อาร์เรย์ หรือ ออบเจกต์ที่มีคู่ คีย์-ค่า อาร์เรย์และออบเจกต์ถูกสร้างขึ้น เช่นเดียวกับใน JavaScript แต่มีข้อจำกัด: สตริงทั้งหมดและคีย์สตริงของออบเจกต์ต้อง อยู่ในเครื่องหมายอัญประกาศคู่

ตัวอย่างเช่น ลองสร้างสตริงที่บรรจุ อาร์เรย์ในรูปแบบ JSON:

javascriptlet json = '[1, 2, 3, 4, 5, "a", "b"]';

และตอนนี้สร้างสตริงที่บรรจุออบเจกต์ ในรูปแบบ JSON:

javascriptlet json = `{
  "a": "aaa",
  "b": "bbb",
  "c": "ccc",
  "111": "ddd"
}`;

สามารถผสมผสานโครงสร้างเหล่านี้ในลำดับใดก็ได้:

javascriptlet json = `[
  {
    "a": "aaa",
    "b": "bbb"
  },
  {
    "c": "ccc",
    "d": "ddd"
  }
]`;

แตกต่างจากโครงสร้างใน JavaScript, ใน JSON ไม่อนุญาตให้มีเครื่องหมายจุลภาคหลังสมาชิกสุดท้าย ของอาร์เรย์และออบเจกต์:

javascriptlet json = '[1, 2, 3, 4, 5,]'; // ไม่ถูกต้อง
let json = '[1, 2, 3, 4, 5]';  // ถูกต้อง

นอกจากตัวเลขและสตริงแล้ว ค่าอื่นๆ ที่สามารถเป็นสมาชิกได้ คือ ค่า true, false และ null:

javascriptlet json = '[null, true, false]';
Задание 1

กำหนดอาร์เรย์:

javascriptlet arr = [1, 2, 3, 'a', 'b', 'c'];

แปลงอาร์เรย์นี้เป็นสตริง ในรูปแบบ JSON ด้วยตนเอง

Задание 2

กำหนดออบเจกต์:

javascriptlet obj = {
  a: 1,
  b: 2,
  c: 'eee',
  d: true,
};

แปลงออบเจกต์นี้เป็นสตริง ในรูปแบบ JSON ด้วยตนเอง

Задание 3

กำหนดออบเจกต์:

javascriptlet obj = {
  a: ['a', 'b', 'c',],
  b: '111',
  c: 'eee',
};

แปลงออบเจกต์นี้เป็นสตริง ในรูปแบบ JSON ด้วยตนเอง