Chủ đề nổi bật
03/08/2018, 10:22

Bài 04: JSON và Object trong Javascript

Như ta biết object trong Javascript là một kiểu dữ liệu được lưu trữ dạng key : value, điều này khá giống với cấu trúc của chuỗi JSON. Vậy liệu ...

Như ta biết object trong Javascript là một kiểu dữ liệu được lưu trữ dạng key : value, điều này khá giống với cấu trúc của chuỗi JSON. Vậy liệu chúng có mối liên hệ với nhau nào không? Câu trả lời nằm trong cái tên của JSON đó là JavaScript Object NotationNhư vậy JSON được lấy ý tưởng từ object trong Javascript nên chúng có mối liên hệ  mật thiết với nhau.

Nếu bạn đã xem qua serie học ajax rồi thì bạn không còn xa lạ gì với JSON nữa, còn nếu bạn chưa xem thì hãy xem ngay sau khi đọc xong bài này nhé. JSON được ứng dụng trong Ajax cho trường hợp Ajax gửi request lên server thì server sẽ trả kết quả về là một đối tượng JSON thay vì là dữ liệu bình thường.

Mình nói về Ajax nhưng trong bài này mình không đề cập đến Ajax nhé các bạn, nếu bạn muốn tìm hiểu thì hãy vào link trên để xem. Trong bài mình chỉ đề cập mối liên hệ giữa JSON và OBJECT trong Javascript.

1. Đối tượng trong Javascript

Đối tượng trong Javascript được khai báo với cấu trúc như sau:

var objectName = {
    key1 : "value1",
    key2 : "value2",
    key3 : "value3"
};

Giả sử ta cần lưu trữ thông tin của sinh viên thì ta khai báo như sau:

var sinhvien = {
    name : "Nguyễn Văn Cường",
    age : "1990",
    blog : "code24h.com"
};

Nhưng trường hợp ta cần lưu trữ nhiều sinh viên cùng một lúc thì sao? Lúc này ta cần sử dụng mảng trong javascript để lưu trữ, lúc này cấu trúc khai báo như sau:

var sinhvien = [
    {
        name : "Nguyễn Văn Cường",
        age : "1990",
        blog : "code24h.com"
    },
    {
        name : "Nguyễn Văn Kính",
        age : "1992",
        blog : "code24h.com"
    }
];

Dấu ngoặc vuông [] trong trường hợp này chính là cách khai báo mảng trong Javascript.

2.  Liên tưởng tới JSON

Từ ví dụ trên nếu liên tưởng tới JSON thì bạn sẽ thấy nó rất giống phải không nào, chỉ khác ở chỗ tên key không được bao quanh bởi cặp dấu nháy kép. Tuy nhiên bản chất nó lại giống nhau, nghĩa là JSON lấy ý tưởng kết hợp giữa đối tượng và mảng trong Javascript.

Với ví dụ trên nếu chuyển thành chuỗi JSON thì ta sẽ có như sau:

{
    "name" : "Nguyễn Văn Cường",
    "age" : "1990",
    "blog" : "code24h.com"
}

Và trường hợp lưu trữ nhiều sinh viên sẽ là:

[
    {
        "name" : "Nguyễn Văn Cường",
        "age" : "1990",
        "blog" : "code24h.com"
    },
    {
        "name" : "Nguyễn Văn Kính",
        "age" : "1992",
        "blog" : "code24h.com"
    }
]

Như vậy việc sử dụng JSON để thao tác trong Javascript hoàn toàn có lợi vì nó đơn giản nhưng rất hiệu quả, chính vì vậy đa số các ứng dụng có sử dụng API đều trả kết quả về dạng JSON (xem bài các tình huống JSON). 

3. Lời kết

Bài này cũng không có gì đặc sắc vì mình chỉ muốn nhấn mạnh với các bạn rằng JSON có mỗi liên hệt mật thiết với Javascript, vì thế hãy sử dụng JSON nếu có thể thay vì sử dụng XML hoặc một kiểu dữ liệu nào khác. Sau khi đọc xong bài này bạn có thể tới serie học ajax để xem rồi đấy.

BÀI KẾ SAU
BÀI KẾ TIẾP

Nguồn: code24h.com

Bài liên quan
Mới nhất

JSON căn bản

BÀI KẾ SAU BÀI KẾ TIẾP

Bài 04: JSON và Object trong Javascript

Như ta biết object trong Javascript là một kiểu dữ liệu được lưu trữ dạng key : value, điều này khá giống với cấu trúc của chuỗi JSON. Vậy liệu ...

Bài 05: JSON và ứng dụng trong Ajax

Mình đã có một serie học Ajax nói về việc kết hợp với JSON rồi nên bạn có thể tới link đó để xem chi tiết hơn, nên trong bài này mình sẽ nói một ...

Bài 03: Bài tập JSON - Xử lý tình huống với JSON

Sau hai bài tìm hiểu JSON là gì và xử lý JSON trong PHP thì chắc hẳn bạn đã hiểu được một phần nào về JSON rồi. Nên trong bài này mình sẽ trình ...

Bài 02: Xử lý JSON trong PHP - Các ví dụ về JSON PHP và MYSQL

Bài trước chúng ta đã tìm hiểu được khái niệm JSON là gì rồi và cũng biết được cấu trúc chuỗi JSON như thế nào, vậy thì trong bài này chúng ta sẽ ...

Bài 01: JSON là gì? Cấu trúc chuỗi JSON

Thông thường khi làm các ứng dụng website thì bạn sẽ lưu dữ liệu vào một hệ quản trị cơ sở dữ liệu nào đó như là MYSQL, SQL SERVER, tuy nhiên nếu ...