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

JSON.parse() ใน JavaScript: แปลง JSON String เป็น Object

JSON.parse()

แปลง JSON String ให้กลายเป็น JavaScript Object/Array ใช้เมื่อรับข้อมูลจาก Server (API Response)

ไวยากรณ์

JSON.parse(text[, reviver])

ตัวอย่าง

<html> <body> <script>
  var jsonString = '{"name":"Jon", "age":20, "city":"Columbia"}';
  var obj = JSON.parse(jsonString);
  
  document.write(obj.name); // Jon
  console.log(obj);         // {name: "Jon", age: 20, city: "Columbia"}
</script> </body> </html>

ผลลัพธ์ Console

{name: "Jon", age: 20, city: "Columbia"}

Reviver Function (Optional)

ปรับแปลงค่าระหว่าง Parse:

const json = '{"date": "2024-01-15", "value": 100}';
const obj = JSON.parse(json, (key, value) => {
  if (key === 'date') return new Date(value);
  return value;
});
console.log(obj.date instanceof Date); // true

ข้อผิดพลาดทั่วไป

  • SyntaxError: JSON ไม่ถูกต้อง (Single quote, Trailing comma, Comment)
  • Circular Reference: ไม่สามารถ Parse Object ที่มี Circular Reference ได้

คู่คู่: JSON.stringify()

ทำทางตรงข้าม: Object → JSON String