Hi 🤓 Cảm ơn bạn đã ghé thăm blog này, nếu những bài viết trên blog giúp ích cho bạn. Bạn có thể giúp blog hiển thị quảng cáo bằng cách tạm ngừng ad blocker 😫 và để giúp blog duy trì hoạt động nếu bạn muốn.
Cảm ơn bạn!

Trong bài viết này, chúng ta sẽ tìm hiểu về JSON thông qua các ví dụ nhé.

JSON là gì?

JSON là viết tắt của Javascript Object Notation. JSON là một text-based được sử dụng để lưu trữ và truyền dữ liệu.

Ví dụ:

// JSON syntax
{
    "name": "homiedev.com",
    "url": "https://homiedev.com/",
}

Trong JSON, dữ liệu nằm trong các cặp key/value và được phân tách bằng dấu phẩy ,.

JSON bắt nguồn từ JavaScript. Vì vậy, cú pháp JSON giống với cú pháp của object trong JavaScript. Tuy nhiên, định dạng JSON (JSON format) cũng có thể sử dụng và tạo bởi các ngôn ngữ lập trình khác.

Object JavaScript và JSON không giống nhau. Chúng ta sẽ tìm hiểu về sự khác biệt của chúng ở phần sau nhé.

JSON Data

Dữ liệu trong JSON bao gồm các key/value tương tự như các thuộc tính của object trong JavaScript (JavaScript object properties). Key và value được viết trong dấu ngoặc kép " ", cách nhau bằng dấu hai chấm :.

Ví dụ:

// JSON data
"blog": "homiedev"

JSON yêu cầu dấu ngoặc kép cho các key.

JSON Object

JSON Object được viết bên trong dấu ngoặc nhọn {}. JSON Object có thể chứa nhiều cặp key/value.

Ví dụ:

// JSON object
{ "name": "Trang", "age": 22 }

JSON Array

JSON Array được viết bên trong dấu ngoặc vuông [].

Ví dụ:

// JSON array
[ "JavaScript", "TypeScript", "ReactJS"]

// JSON array chứa object
[
    { "name": "Minh", "age": 22 },
    { "name": "Thanh", "age": 20 }.
    { "name": "Vy", "age": 23 }
]

JSON data có thể chứa objects và arrays. Tuy nhiên, không giống như object trong JavaScript, JSON data không thể chứa các function dưới dạng giá trị (value).

Sử dụng JSON Data

Bạn có thể sử dụng JSON Data bằng cách sử dụng dot notation.

Ví dụ:

// JSON object
const data = {
    "name": "homiedev.com",
    "categories" : ["JavaScript", "GatsbyJS", "CSS", "ReactJS"]
}

// sử dụng JSON object
console.log(data.name); // homiedev.com
console.log(data.categories[0]); // JavaScript

Chúng ta sử dụng . (dot notation) để lấy dữ liệu trong JSON. Cú pháp của nó là: variableName.key

Bạn cũng có thể sử dụng cú pháp dấu ngoặc vuông [] (bracket syntax) để lấy dữ liệu JSON.

Ví dụ:

// JSON object
const data = {
    "name": "Long",
    "age": 22
}

console.log(data["name"]); // Long

JavaScript Objects vs JSON

Mặc dù cú pháp của JSON tương tự như object JavaScript, nhưng JSON khác với các object JavaScript.

JSON JavaScript Object
key trong cặp key/value phải nằm trong dấu ngoặc kép. key trong cặp key/value có thể không cần nằm trong dấu ngoặc kép.
JSON không được chứa các function. Các object JavaScript có thể chứa các function.
JSON có thể được tạo và sử dụng bởi các ngôn ngữ lập trình khác. JavaScript Object chỉ có thể được sử dụng trong JavaScript.

Chuyển đổi JSON thành JavaScript Object

Bạn có thể chuyển đổi dữ liệu của JSON sang object trong JavaScript bằng cách sử dụng hàm built-in JSON.parse().

Ví dụ:

// json object
const jsonData = '{ "name": "homiedev", "built": "GatsbyJS" }';

// chuyển thành object
const obj = JSON.parse(jsonData);

// sử dụng
console.log(obj.name); // homiedev

Chuyển đổi JavaScript Object thành JSON

Bạn cũng có thể chuyển đổi object trong JavaScript sang định dạng JSON bằng cách sử dụng hàm built-in JSON.stringify() trong JavaScript.

Ví dụ:

// object
const jsonData = { "name": "Thanh", "age": 22 };

// chuyển sang JSON
const obj = JSON.stringify(jsonData);

console.log(typeof obj, obj); // string {"name":"Thanh","age":22}

JSON là định dạng được sử dụng phổ biến nhất để trao đổi dữ liệu từ máy chủ (server) đến máy khách (client) và ngược lại. JSON Data rất dễ sử dụng. Thao tác dữ liệu JSON khá nhanh vì chúng chỉ chứa văn bản.

Chúng ta cũng có thể tạo và sử dụng JSON trong các ngôn ngữ lập trình khác.

JSON có thể được lưu trữ trong tệp riêng của nó, về cơ bản thì nó chỉ là một text file có phần mở rộng là .jsonMIME typeapplication/json.

MIME type hiểu đơn giản là nó cho phép trình duyệt nhận ra loại tệp (filetype) của file. Ví dụ: MIME type của JSON text là application/json giúp cho trình duyệt biết rằng nó đã nhận được một file JSON. Dựa trên kiểu MIME này, trình duyệt có thể phân tích cú pháp và hiển thị dữ liệu JSON đã nhận một cách chính xác.

Đây là một ví dụ về file JSON các bạn có thể tải về xem nhé:

JSON example

⚡ Mình có làm một bài viết về cách đọc file JSON từ local, các bạn có thể đọc tại: Làm việc với JSON - lấy dữ liệu file JSON từ local.


Một số bài viết nên đọc:

  1. Hướng dẫn fetch API với project random Person Card API
  2. Tạo slide nhanh chóng và đẹp mắt với jquery slick slider
Có thể bạn thích ⚡
homiedev
About Me

Hi, I'm @devnav. Một người thích chia sẻ kiến thức, đặc biệt là về Frontend 🚀. Trang web này được tạo ra nhằm giúp các bạn học Frontend hiệu quả hơn 🎉😄.

Chúc các bạn tìm được kiến thức hữu ích trong blog này 😁😁.