JSON là gì?
JSON được sử dụng để lưu trữ thông tin một cách có tổ chức và dễ truy cập. Dạng đầy đủ của nó là JavaScript Object Notation. Nó cung cấp một bộ sưu tập dữ liệu mà con người có thể đọc được và có thể được truy cập một cách hợp lý.
Trong hướng dẫn XML so với JSON này, bạn sẽ học:
- JSON là gì?
- XML là gì?
- Lịch sử của JSON
- Lịch sử của XML
- Các tính năng của JSON
- Các tính năng của XML
- Sự khác biệt giữa JSON và XML
- Mã JSON và Mã XML
- Ưu điểm của việc sử dụng JSON
- Ưu điểm của việc sử dụng XML
- Nhược điểm của việc sử dụng JSON
- Nhược điểm của việc sử dụng XML
XML là gì?
XML là một ngôn ngữ đánh dấu được thiết kế để lưu trữ dữ liệu. Nó được sử dụng phổ biến hoặc truyền dữ liệu. Nó phân biệt chữ hoa chữ thường. XML cung cấp cho bạn cách xác định các phần tử đánh dấu và tạo ngôn ngữ đánh dấu tùy chỉnh. Đơn vị cơ bản trong XML được gọi là một phần tử. Phần mở rộng của tệp XML là .xml
SỰ KHÁC BIỆT CHÍNH
- Đối tượng JSON có kiểu trong khi dữ liệu XML không có kiểu.
- JSON không cung cấp hỗ trợ không gian tên trong khi XML cung cấp hỗ trợ không gian tên.
- JSON không có khả năng hiển thị trong khi XML cung cấp khả năng hiển thị dữ liệu.
- JSON kém bảo mật hơn trong khi XML an toàn hơn so với JSON.
- JSON chỉ hỗ trợ mã hóa UTF-8 trong khi XML hỗ trợ các định dạng mã hóa khác nhau.
Lịch sử của JSON
Dưới đây là những dấu mốc quan trọng hình thành nên lịch sử của JSON:
- Douglas Crockford đã chỉ định định dạng JSON vào đầu những năm 2000.
- Trang web chính thức được ra mắt vào năm 2002.
- Vào tháng 12 năm 2005, Yahoo! bắt đầu cung cấp một số dịch vụ web của mình trong JSON.
- JSON trở thành tiêu chuẩn quốc tế ECMA vào năm 2013.
- Tiêu chuẩn định dạng JSON cập nhật nhất đã được xuất bản vào năm 2017.
Lịch sử của XML
Dưới đây là những dấu mốc quan trọng trong lịch sử của XML:
- XML cũng bắt nguồn từ SGML.
- Phiên bản 1.0 của XML được phát hành vào tháng 2 năm 1998.
- Tháng 1 năm 2001: Tiêu chuẩn đề xuất của IETF: Các loại phương tiện XML
- XML là Ngôn ngữ Đánh dấu Có thể Mở rộng.
- 1970: Charles Goldfarb, Ed Mosher và Ray Lorie phát minh ra GML
- Sự phát triển của XML bắt đầu vào năm 1996 tại Sun Microsystem
Các tính năng của JSON
- Dễ dàng sử dụng - JSON API cung cấp cao cấp mặt tiền, giúp bạn đơn giản hóa thường được sử dụng use-cases. Trong khi đó, bạn sẽ không gặp phải khó khăn gì.
- Hiệu suất - JSON khá nhanh vì nó tiêu tốn rất ít dung lượng bộ nhớ, điều này đặc biệt thích hợp cho các hệ thống hoặc đồ thị đối tượng lớn.
- Công cụ miễn phí - Thư viện JSON là mã nguồn mở và sử dụng miễn phí.
- Không yêu cầu tạo ánh xạ - Jackson API cung cấp ánh xạ mặc định cho nhiều đối tượng được tuần tự hóa.
- JSON sạch - Tạo kết quả JSON sạch và tương thích, dễ đọc.
- Sự phụ thuộc - Thư viện JSON không yêu cầu bất kỳ thư viện nào khác để xử lý.
Các tính năng của XML
- Các thẻ XML không được xác định trước. Bạn cần xác định các thẻ tùy chỉnh của mình.
- XML được thiết kế để mang dữ liệu, không cho phép bạn hiển thị dữ liệu đó.
- Mã đánh dấu của XML rất dễ hiểu đối với con người.
- Vâng, định dạng có cấu trúc rất dễ đọc và viết từ các chương trình.
- XML là một ngôn ngữ đánh dấu có thể mở rộng như HTML.
Sự khác biệt giữa JSON và XML
Đây là sự khác biệt cơ bản giữa JSON và XML
JSON | XML |
---|---|
Đối tượng JSON có một loại | Dữ liệu XML không có kiểu đánh máy |
Các loại JSON: chuỗi, số, mảng, Boolean | Tất cả dữ liệu XML phải là chuỗi |
Dữ liệu có thể truy cập dễ dàng dưới dạng các đối tượng JSON | Dữ liệu XML cần được phân tích cú pháp. |
JSON được hỗ trợ bởi hầu hết các trình duyệt. | Phân tích cú pháp XML trên nhiều trình duyệt có thể phức tạp |
JSON không có khả năng hiển thị. | XML cung cấp khả năng hiển thị dữ liệu vì nó là một ngôn ngữ đánh dấu. |
JSON chỉ hỗ trợ kiểu dữ liệu số và văn bản. | XML hỗ trợ nhiều kiểu dữ liệu khác nhau như số, văn bản, hình ảnh, biểu đồ, đồ thị, v.v. Nó cũng cung cấp các tùy chọn để chuyển cấu trúc hoặc định dạng của dữ liệu với dữ liệu thực tế. |
Lấy giá trị thật dễ dàng | Việc lấy lại giá trị rất khó |
Được hỗ trợ bởi nhiều bộ công cụ Ajax | Không được hỗ trợ đầy đủ bởi bộ công cụ Ajax |
Một cách hoàn toàn tự động để giải mã hóa / tuần tự hóa JavaScript. | Các nhà phát triển phải viết mã JavaScript để tuần tự hóa / hủy tuần tự hóa từ XML |
Hỗ trợ bản địa cho đối tượng. | Đối tượng phải được thể hiện bằng các quy ước - hầu như không sử dụng các thuộc tính và phần tử. |
Nó chỉ hỗ trợ mã hóa UTF-8. | Nó hỗ trợ các mã hóa khác nhau. |
Nó không hỗ trợ bình luận. | Nó hỗ trợ bình luận. |
Các tệp JSON dễ đọc so với XML. | Các tài liệu XML tương đối khó đọc và khó hiểu hơn. |
Nó không cung cấp bất kỳ hỗ trợ nào cho không gian tên. | Nó hỗ trợ không gian tên. |
Nó ít được bảo mật hơn. | Nó an toàn hơn JSON. |
Mã JSON và Mã XML
Hãy xem một mã JSON mẫu
{"student": [{"id":"01","name": "Tom","lastname": "Price"},{"id":"02","name": "Nick","lastname": "Thameson"}]}
Hãy nghiên cứu mã tương tự trong XML
01 Tom Price 02 Nick Thameson
Ưu điểm của việc sử dụng JSON
Dưới đây là những lợi ích / ưu điểm quan trọng của việc sử dụng JSON:
- Cung cấp hỗ trợ cho tất cả các trình duyệt
- Dễ đọc và viết
- Cú pháp đơn giản
- Bạn có thể phân tích cú pháp tự nhiên trong JavaScript bằng cách sử dụng hàm eval ()
- Dễ dàng tạo và thao tác
- Được hỗ trợ bởi tất cả các khung JavaScript chính
- Được hỗ trợ bởi hầu hết các công nghệ phụ trợ
- JSON được nhận dạng nguyên bản bởi JavaScript
- Nó cho phép bạn truyền và tuần tự hóa dữ liệu có cấu trúc bằng kết nối mạng.
- Bạn có thể sử dụng nó với các ngôn ngữ lập trình hiện đại.
- JSON là văn bản có thể được chuyển đổi thành bất kỳ đối tượng nào của JavaScript thành JSON và gửi JSON này đến máy chủ.
Ưu điểm của việc sử dụng XML
Dưới đây là những lợi ích / nhược điểm đáng kể của việc sử dụng XML:
- Làm cho tài liệu có thể vận chuyển qua các hệ thống và ứng dụng. Với sự trợ giúp của XML, bạn có thể trao đổi dữ liệu nhanh chóng giữa các nền tảng khác nhau.
- XML tách dữ liệu khỏi HTML
- XML đơn giản hóa quá trình thay đổi nền tảng
Nhược điểm của việc sử dụng JSON
Dưới đây là nhược điểm / hạn chế của việc sử dụng JSON:
- Không hỗ trợ vùng tên, do đó khả năng mở rộng kém
- Hỗ trợ công cụ phát triển hạn chế
- Nó cung cấp hỗ trợ cho định nghĩa ngữ pháp chính thức
Nhược điểm của việc sử dụng XML
Dưới đây là nhược điểm / hạn chế của việc sử dụng XML:
- XML yêu cầu một ứng dụng xử lý
- Cú pháp XML rất giống với các định dạng truyền dữ liệu 'dựa trên văn bản' thay thế khác, điều này đôi khi gây nhầm lẫn
- Không hỗ trợ kiểu dữ liệu nội tại
- Cú pháp XML là thừa
- Không cho phép người dùng tạo thẻ của mình.