1. Đối tượng JSON
Đối tượng JSON là một tập hợp các cặp name/value (hay gọi là key/value ) không theo thứ tự. Một đối tượng JSON được đặt trong các dấu ngoặc nhọn. Nó bắt đầu bằng { và kết thúc bằng } . Các đối tượng JSON được viết trong cặp key/value mà trong đó:
- Key phải là chuỗi khác nhau và value là các giá trị JSON hợp lệ như: string , number , object , array , boolean , null
- Key và Value được phân tách nhau bằng dấu hai chấm
- Mỗi cặp Key/Value lại được ngăn cách nhau bằng dấu phẩy
Ví dụ: đây là một chuỗi JSON
'{"name":"Thành", "age":19, "car":null}'
Bên trong chuỗi JSON có một đối tượng JSON
{"name":"Thành", "age":19, "car":null}
2. Tạo một đối tượng JavaScript từ JSON
Ta có thể tạo một đối tượng Js từ một đối tượng JSON như sau
<!DOCTYPE html>
<html>
<body>
<h2>Tạo một đối tượng Js từ JSON</h2>
<p id="demo"></p>
<script>
const myObj = {"name":"Thành", "age":19, "car":null};
document.getElementById("demo").innerHTML = myObj.name;
</script>
</body>
</html>
Thông thường, ta tạo một đối tượng Js bằng cách phân tích cú pháp chuỗi JSON:
<!DOCTYPE html>
<html>
<body>
<h2>Tạo một JSON phân tích cú pháp đối tượng</h2>
<p id="demo"></p>
<script>
const myJSON = '{"name":"Thành", "age":19, "car":null}';
const myObj = JSON.parse(myJSON);
document.getElementById("demo").innerHTML = myObj.name;
</script>
</body>
</html>
3. Truy cập giá trị của đối tượng
Ta có thể truy cập các giá trị đối tượng bằng cách sử dụng ký hiệu dấu chấm (.) như sau:
<!DOCTYPE html>
<html>
<body>
<h2>Truy cập một đối tượng JavaScript</h2>
<p id="demo"></p>
<script>
const myJSON = '{"name":"Thành", "age":19, "car":null}';
const myObj = JSON.parse(myJSON);
document.getElementById("demo").innerHTML = myObj.name;
</script>
</body>
</html>
Ta cũng có thể truy cập các giá trị đối tượng bằng cách sử dụng ký hiệu ngoặc vuông [] như sau:
<!DOCTYPE html>
<html>
<body>
<h2>Truy cập một đối tượng JavaScript</h2>
<p id="demo"></p>
<script>
const myJSON = '{"name":"Thành", "age":19, "car":null}';
const myObj = JSON.parse(myJSON);
document.getElementById("demo").innerHTML = myObj["name"];
</script>
</body>
</html>
4. Vòng lặp một đối tượng
Ta có thể lặp qua các thuộc tính đối tượng bằng vòng lặp for-in
<!DOCTYPE html>
<html>
<body>
<p id="demo"></p>
<script>
const myJSON = '{"name":"Thành", "age":19, "car":null}';
const myObj = JSON.parse(myJSON);
let text = "";
for (const x in myObj) {
text += x + ", ";
}
document.getElementById("demo").innerHTML = text;
</script>
</body>
</html>
Trong vòng lặp for-in, ta hãy sử dụng ký hiệu ngoặc vuông để truy cập các giá trị thuộc tính
<!DOCTYPE html>
<html>
<body>
<p id="demo"></p>
<script>
const myJSON = '{"name":"Thành", "age":19, "car":null}';
const myObj = JSON.parse(myJSON);
let text = "";
for (const x in myObj) {
text += myObj[x] + ", ";
}
document.getElementById("demo").innerHTML = text;
</script>
</body>
</html>
Ngoài ra ta cũng có đối tượng JSON lồng nhau. Ví dụ
{
"firstName": "Thành",
"lastName": "Nguyễn",
"age": 19,
"address" : {
"streetAddress": "Ba Vì",
"city": "Hà Nội",
"state": null,
"postalCode": "100000"
}
}


