Hướng dẫn JSON: Tìm hiểu với định dạng tệp đơn giản VÍ DỤ

JSON là gì?

JSON là một định dạng tệp được sử dụng để lưu trữ thông tin một cách có tổ chức và dễ truy cập. Hình thức đầy đủ của nó là JavaKý hiệu đối tượng tập lệnh. Nó cung cấp một bộ sưu tập dữ liệu có thể đọc được bằng con người và có thể được truy cập một cách hợp lý. Phần mở rộng tên tệp của nó cho mã lập trình được viết là .json. Loại phương tiện Internet cho JSON là application/json và Mã định danh loại thống nhất của nó là public.json.

Tại sao nên 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ễ dàng đọc và viết
  • Cú pháp đơn giản
  • Bạn có thể phân tích cú pháp nguyên bản trong JavaScript 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 chính JavaKhung kịch bản
  • Được hỗ trợ bởi hầu hết các công nghệ phụ trợ
  • JSON được công nhận 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 JavaViết mã vào JSON và gửi JSON này tới máy chủ.

Lịch sử của JSON

Lịch sử của JSON
Hướng dẫn JSON

Dưới đây là những cột 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 2005 năm XNUMX, Yahoo! bắt đầu cung cấp một số dịch vụ web của mình bằng 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.

Các tính năng của JSON

Dễ sử dụng – API JSON cung cấp mặt tiền cấp cao, giúp bạn đơn giản hóa các trường hợp sử dụng thường dùng.

HIỆU QUẢ – JSON khá nhanh vì nó tiêu tốn rất ít dung lượng bộ nhớ, đặc biệt phù hợp với 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à miễn phí sử dụng.

Không yêu cầu tạo bản đồ – Jackson API cung cấp ánh xạ mặc định cho nhiều đối tượng được tuần tự hóa.

Làm sạch JSON – Tạo kết quả JSON rõ ràng và tương thích, dễ đọc.

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ý.

Quy tắc cho cú pháp JSON

Các quy tắc cho cú pháp JSON là:

  • Dữ liệu phải theo cặp tên/giá trị
  • Dữ liệu phải được phân tách bằng dấu phẩy
  • Niềng răng cong nên giữ đồ vật
  • Dấu ngoặc vuông giữ mảng

Các kiểu dữ liệu trong JSON

Kiểu dữ liệu quan trọng được sử dụng trong JSON là:

Loại dữ liệu Mô tả Chi tiết
Con số Nó bao gồm số thực, số nguyên hoặc số thực
Chuỗi Nó bao gồm bất kỳ văn bản hoặc Unicode nào được trích dẫn kép với dấu gạch chéo ngược thoát
Boolean Kiểu dữ liệu Boolean đại diện cho giá trị Đúng hoặc Sai
Null Giá trị Null biểu thị rằng biến liên quan không có bất kỳ giá trị nào
Đối tượng Đây là tập hợp các cặp khóa-giá trị và luôn được phân tách bằng dấu phẩy và đặt trong dấu ngoặc nhọn.
Mảng Đó là một chuỗi các giá trị được sắp xếp tách biệt.

Con số

  • Số này là định dạng dấu phẩy động độ chính xác kép phụ thuộc vào phương pháp triển khai của nó.
  • Trong JSON, bạn không thể sử dụng định dạng Thập lục phân và Bát phân.

Bảng sau hiển thị các loại số:

Kiểu Mô tả Chi tiết
Số nguyên Số 1-9 và 0. Cả số dương và số âm.
Phần Trăm Phân số như 3
Số mũ Số mũ như e, e+

Cú pháp:

var json-object-name = { string : number_value,......}

Ví dụ:

var obj = {salary: 2600}

Chuỗi

Đây là một chuỗi các ký tự Unicode được đặt trong dấu ngoặc kép và có dấu gạch chéo ngược thoát.

Bảng sau đây hiển thị các loại chuỗi khác nhau:

Kiểu Mô tả Chi tiết
* Sử dụng để gõ dấu ngoặc kép
/ Sử dụng cho Solidus
\ Sử dụng cho phép rắn ngược
B Sử dụng để thêm phím lùi
F Từ nguồn cấp dữ liệu
N Để tạo một dòng mới
R Sử dụng để vận chuyển trở lại
T Để hiển thị tab ngang
U Chữ số thập lục phân

Cú pháp:

var json-object-name = { string : "string value",…..}

Ví dụ:

var obj= {name: 'Andy'}

Boolean

Nó chỉ lưu trữ giá trị đúng hoặc sai.

Cú pháp:

var json-object-name = {string : true/false, …..}

Ví dụ:

var obj = {active: 'true'}

Mảng

  • Nó là một tập hợp các giá trị có thứ tự.
  • Bạn nên sử dụng mảng khi tên khóa là số nguyên tuần tự.
  • Nó phải được đặt trong dấu ngoặc vuông và được phân tách bằng dấu ',' (dấu phẩy)

Cú pháp:

[value, .......]

Ví dụ:

Hiển thị một mảng lưu trữ nhiều đối tượng:

{
   "eBooks":[
      {
         "language":"Pascal",
         "edition":"third"
      },
      {
         "language":"Python",
         "edition":"four"
      },
      {
         "language":"SQL",
         "edition":"second"
      }
   ]
}

Đối tượng JSON

A Đối tượng JSON là một thực thể trong JSON được bao trong dấu ngoặc nhọn. Nó được viết trong tập hợp không có thứ tự các cặp tên và giá trị trong đó tên phải được theo sau bởi “:” (dấu hai chấm), và các cặp tên/giá trị cần được phân tách bằng dấu “,” (dấu phẩy). Nó có thể được sử dụng khi tên khóa là các chuỗi tùy ý.

Cú pháp:

{ string :  value, ….. }

Ví dụ:

{
"id": 110,
"language": "Python",
"price": 1900,
}

Khoảng trắng

Bạn có thể chèn khoảng trắng giữa một cặp mã thông báo.

Ví dụ:

Cú pháp:

{string:"    ",….}

Ví dụ:

var a = " Alex"; var b = "Steve";

Ví dụ về JSON

Ví dụ mã đã cho xác định cách sử dụng JSON để lưu trữ thông tin liên quan đến sách lập trình cùng với ấn bản và tên tác giả.

{
   "book":[
      {
         "id":"444",
         "language":"C",
         "edition":"First",
         "author":"Dennis Ritchie "
      },
      {
         "id":"555",
         "language":"C++",
         "edition":"second",
         "author":" Bjarne Stroustrup "
      }
   ]
}  

Hãy hiểu định dạng JSON bằng một ví dụ về tệp JSON khác. Ở đây, JSON xác định tên, họ và id của một học sinh.

{
  "student": [ 
	
     { 
        "id":"01", 
        "name": "Tom", 
        "lastname": "Price" 
     }, 
	
     { 
        "id":"02", 
        "name": "Nick", 
        "lastname": "Thameson" 
     } 
  ]   
}

Ứng dụng JSON

Dưới đây là một số ứng dụng phổ biến của JSON:

  • Giúp bạn truyền dữ liệu từ máy chủ
  • Định dạng tệp JSON mẫu giúp truyền và tuần tự hóa tất cả các loại dữ liệu có cấu trúc.
  • Cho phép bạn thực hiện các cuộc gọi dữ liệu không đồng bộ mà không cần phải làm mới trang
  • Giúp bạn truyền dữ liệu giữa máy chủ và ứng dụng web.
  • Nó được sử dụng rộng rãi cho JavaỨng dụng dựa trên tập lệnh, bao gồm tiện ích mở rộng trình duyệt và trang web.
  • Bạn có thể truyền dữ liệu giữa máy chủ và ứng dụng web bằng JSON.
  • Chúng ta có thể sử dụng JSON với các ngôn ngữ lập trình hiện đại.
  • Nó được dùng để viết JavaỨng dụng dựa trên tập lệnh bao gồm tiện ích bổ sung cho trình duyệt.
  • Các dịch vụ web và API Restful sử dụng định dạng JSON để lấy dữ liệu công khai.

JSON so với XML

Đây là điểm khác biệt chính giữa JSON và XML

JSON XML
Đối tượng JSON có một kiểu XML dữ liệu không thể đá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 đối tượng JSON Dữ liệu XML cần được phân tích cú pháp.
Các tệp JSON dễ đọc hơn. Các tệp XML khó có thể đọc được hơn.
JSON được hầu hết các trình duyệt hỗ trợ. 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ì đây là ngôn ngữ đánh dấu.
Lấy giá trị dễ dàng Lấy lại giá trị là khó khăn
Đượ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 giải tuần tự hóa/tuần tự hóa hoàn toàn tự động JavaKịch bản. Các nhà phát triển phải viết JavaMã lệnh để tuần tự hóa/hủy tuần tự hóa từ XML
Hỗ trợ riêng cho đối tượng. Đối tượng phải được thể hiện bằng các quy ước – hầu hết không sử dụng được các thuộc tính và phần tử.

Ví dụ về JSON

Dưới đây là một ví dụ JSON đơn giản:

{
  "student": [ 
	
     { 
        "id":"01", 
        "name": "Tom", 
        "lastname": "Price" 
     }, 
	
     { 
        "id":"02", 
        "name": "Nick", 
        "lastname": "Thameson" 
     } 
  ]   
}

Ví dụ về XML

<?xml version="1.0" encoding="UTF-8" ?>
<root>
	<student>
		<id>01</id>
		<name>Tom</name>
		<lastname>Price</lastname>
	</student>
	<student>
		<id>02</id>
		<name>Nick</name>
		<lastname>Thameson</lastname>
	</student>
</root>

JSON không phải là gì?

  • Tệp dữ liệu JSON mẫu không phải là định dạng tài liệu.
  • Nó không phải là một ngôn ngữ đánh dấu.
  • JSON không cung cấp định dạng tuần tự hóa chung.
  • Nó không phải là cấu trúc định kỳ hoặc theo chu kỳ.
  • Nó cũng không phải là một cấu trúc vô hình.

Nhược điểm của JSON

Dưới đây là một số ưu điểm của JSON:

  • Không hỗ trợ không gian tên, do đó khả năng mở rộng kém
  • Hạn chế công cụ phát triển hỗ trợ
  • Không hỗ trợ định nghĩa ngữ pháp chính thức

Các công cụ JSON phổ biến (Tiện ích bổ sung)

Dưới đây là các công cụ JSON quan trọng:

JSONLint:

JSONLint là một dự án nguồn mở được sử dụng làm trình xác nhận và định dạng lại cho JSON. Đây là một định dạng trao đổi dữ liệu nhẹ. Sao chép và dán, nhập trực tiếp hoặc nhập URL vào công cụ trình xác thực JSON để xác thực mã JSON của bạn.

Link: https://jsonlint.com

Trình soạn thảo JSON trực tuyến:

JSON Editor Online là một công cụ dựa trên web hữu ích. Nó cho phép bạn chỉnh sửa, xem và định dạng JSON. Nó hiển thị dữ liệu của bạn cạnh nhau một cách rõ ràng, có thể chỉnh sửa phần mềm soạn thảo mã.

Link: https://jsoneditoronline.org/

Công cụ khai thác JSON:

Đây là một công cụ giúp bạn loại bỏ các khoảng trắng và cung cấp mã JSON chiếm ít không gian nhất.

Link: https://www.browserling.com/tools/json-minify

Trình chuyển đổi JSON sang XML:

Trình chuyển đổi JSON sang XML là một công cụ đơn giản và hiệu quả giúp bạn chuyển đổi mã JSON của mình.

Link: https://codebeautify.org/jsontoxml

Trình định dạng JSON:

Trình định dạng JSON giúp bạn giải quyết vấn đề bằng cách định dạng dữ liệu JSON để con người dễ đọc và gỡ lỗi.

Link:https://jsonformatter.curiousconcept.com/

Tổng kết

  • Phương thức JSON được sử dụng để lưu trữ thông tin một cách có tổ chức và dễ truy cập.
  • JSON là viết tắt của JavaKý hiệu đối tượng kịch bản.
  • JSON Cung cấp hỗ trợ cho tất cả các trình duyệt được cung cấp bởi nhiều ngôn ngữ.
  • Douglas Crockford đã chỉ định định dạng JSON vào đầu những năm 2000
  • API JSON cung cấp mặt tiền cấp cao, giúp bạn đơn giản hóa các trường hợp sử dụng thường dùng
  • Các quy tắc quan trọng để viết hệ thống JSON là dữ liệu phải được ghi theo cặp tên/giá trị.
  • Số, Chuỗi, Boolean, Null, Đối tượng và Mảng là các kiểu Dữ liệu quan trọng được sử dụng trong JSON.
  • Nó giúp bạn chuyển dữ liệu từ máy chủ.
  • Đối tượng JSON có một kiểu trong khi dữ liệu XML không có kiểu
  • JSON không phải là định dạng tài liệu
  • Không hỗ trợ không gian tên, do đó khả năng mở rộng kém
  • JSONLint là một dự án nguồn mở được sử dụng làm trình xác nhận và định dạng lại cho JSON.