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 Notation. Như 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.
Nguồn: code24h.com