JSON là gì?

JSON là gì?

1. Tên gọi

Viết tắt của JavaScript Object Notation (dịch sơ sơ là đối tượng JavaScript). Thực ra chỉ là dịch chơi, còn không cứ gọi là JSON.

Xem thêm ở đây http://www.json.org/

2. Nó là gì?

Nó là một chuẩn để định dạng dữ liệu, về mặt này, có thể so sánh JSON với XML, YAML… Nhưng khi JSON đi với JavaScript hoặc ActionScript thì nó có tính ưu việt hơn hẳn.

Tại sao JSON có liên quan đến JavaScript, ActionScript. Đơn giản là vì dữ liệu được định dạng thành chuỗi JSON chính là cách biểu diễn một đối tượng trong các Scripting Language này.

3. Lợi ích của JSON

Khi sử dụng JSON với JavaScript hay ActionScript, không cần phải có các bước phân tích phức tạp như đối với XML. Mà có thể truy vấn trực tiếp giá trị theo tên (khóa) được định nghĩa trong JSON.

Ví dụ:

Bạn có một dữ liệu XML:

<data>
<x>2</x>
<y>3</y>
</data>

Sử dụng JavaScript để đọc dữ liệu này, bạn phải qua một bước phân tích, đưa văn bản XML thành một đối tượng dữ liệu và đọc dữ liệu theo nodes. Giả sử object của bạn là xmlObj, bạn muốn lấy dữ liệu x và y bạn sẽ gọi:

var x = xmlObj.childNodes[0].text;
var y = xmlObj.childNodes[1].text;

Trong trường hợp tương tự, bạn có một dữ liệu JSON:

var jsonStr = '{ data : { x : 2 , y : 3}}';

Sử dụng JavaScript bạn chỉ cần gọi:

eval( 'var jsonObj = ' + jsonStr + ';');
var x = jsonObj.x;
var y = jsonObj.y;

JSON là một chuẩn cực kỳ quan trọng trong lập trình web ở phía client.

Đối với lập trình viên client script. JSON rút ngắn thời gian viết mã JS, AS hơn là sử  dụng XML.

4. Nên sử dụng JSON trong những tình huống nào

  1. Lưu trữ dữ liệu đơn thuần. Đó là khi bạn muốn lưu trữ dữ liệu dưới dạng metadata ở phía server. Chuỗi JSON sẽ được lưu vào database và sau đó khi cần dữ liệu thì sẽ được giải mã. Ví dụ với PHP, cung cấp các hàm liên quan đến JSON để mã và giải mã là json_encode và json_decode.
    • Chú ý: phương pháp này cũng tương tự như sử dụng tính năng serialize và unserialize của PHP. Nhưng trong khi serialize và unserialize sử dụng với cả dữ liệu và biến, tức là phụ thuộc vào ngôn ngữ lập trình là PHP và dĩ nhiên không thể transfer sang ngôn ngữ lập trình khác để unserialize được. Vì vậy, nếu dữ liệu của bạn chỉ đơn thuần là dữ liệu cơ bản (chuỗi kí tự, số…) thì bạn hoàn toàn không nên sử dụng serialize mà nên sử dụng JSON.
  2. Sử dụng JavaScript, ActionScript để xử lý thông tin trả về từ phía server. Rất nhanh và rất dễ dàng.
Tags: 
Bạn thấy bài viết này như thế nào?: 
Average: 9.3 (3 votes)
Ảnh của Khanh Hoang

Khanh Hoang - Kenn

Kenn is a user experience designer and front end developer who enjoys creating beautiful and usable web and mobile experiences.

Bình luận (0)

 

Add Comment

Filtered HTML

  • Các địa chỉ web và email sẽ tự động được chuyển sang dạng liên kết.
  • Các thẻ HTML được chấp nhận: <a> <em> <strong> <cite> <blockquote> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Tự động ngắt dòng và đoạn văn.

Plain text

  • No HTML tags allowed.
  • Các địa chỉ web và email sẽ tự động được chuyển sang dạng liên kết.
  • Tự động ngắt dòng và đoạn văn.
CAPTCHA
This question is for testing whether or not you are a human visitor and to prevent automated spam submissions.

Advertisement

 

jobsora

Dich vu khu trung tphcm

Dich vu diet chuot tphcm

Dich vu diet con trung

Quảng Cáo Bài Viết

 
Python - Ngôn Ngữ Lập Trình Tốt Nhất

Python - Ngôn Ngữ Lập Trình Tốt Nhất

Tạp chí Linux Journal đã công bố kết quả khảo sát người đọc hàng năm của mình vào ngày 01 tháng 12 vừa qua

Sinh viên có thể tham gia Drupal Google's Summer Of Code 2014

Sinh viên có thể tham gia Drupal Google's Summer Of Code 2014

"Student applications started March 10th and are open until March 21st. It's not too late to become a student, mentor, or submit a project idea. Not available to join the GSoC fun...maybe you can send an email to your alumni university mailing list?"

Hướng dẫn tạo 1 userr mới - SSH user on Centos

Hướng dẫn tạo 1 userr mới - SSH user on Centos

You can also grant root permissions to this username by using sudo for all commands:

Công ty diệt chuột T&C

 

Diet con trung