Nếu từng làm việc với API, cấu hình ứng dụng hay lưu trữ dữ liệu, chắc hẳn bạn đã gặp tệp JSON. Đây là định dạng phổ biến nhất để trao đổi dữ liệu giữa các hệ thống, được chuẩn hóa theo ECMA-404 từ năm 2013. Bài viết này sẽ hướng dẫn bạn từ cú pháp cơ bản đến cách sử dụng công cụ trực tuyến để định dạng và kiểm tra JSON miễn phí.

Loại tệp: Văn bản thuần túy · Mục đích chính: Trao đổi dữ liệu · Cú pháp: Cặp tên-giá trị và mảng · Dễ đọc: Dành cho con người và máy · Tiêu chuẩn: Mở (ECMA-404)

Tổng quan nhanh

1Thông tin đã xác nhận
  • JSON là định dạng văn bản sử dụng cặp key-value (BKNs)
  • Hỗ trợ string, number, boolean, array, object, null (ITviec Blog)
  • Chuẩn mở ECMA-404, dễ đọc cho cả con người và máy (JSON Viewer Stack)
2Điều chưa rõ
  • Không có dữ liệu thống kê sử dụng phổ biến của từng công cụ trực tuyến
  • Thiếu so sánh hiệu suất thực tế giữa các công cụ với file lớn
3Tín hiệu thời gian
  • JSON được chuẩn hóa ECMA-404 từ năm 2013, RFC 7159 năm 2014 (ITviec Blog)
  • JSON Crack và JSON Hero phổ biến hóa trực quan hóa trong thời kỳ hiện đại (ITviec Blog)
4Tiếp theo
  • Công cụ AI sẽ tích hợp format và validate JSON tự động
  • JSON Schema ngày càng được áp dụng rộng rãi để xác thực cấu trúc

Bảng thông tin cơ bản về JSON giúp bạn nắm nhanh các thông số kỹ thuật quan trọng của định dạng này.

Thuộc tính Chi tiết
Phát minh Douglas Crockford
Tiêu chuẩn ECMA-404 (2013)
Phần mở rộng .json
Mã hóa UTF-8
Loại dữ liệu hỗ trợ string, number, boolean, array, object, null
Chức năng chính Trao đổi dữ liệu giữa server và client

Định dạng của một tệp JSON là gì?

JSON viết tắt của JavaScript Object Notation, là định dạng trao đổi dữ liệu nhẹ dựa trên văn bản. Cú pháp JSON yêu cầu dữ liệu nằm trong ngoặc nhọn {} cho object, ngoặc vuông [] cho array, key và value trong dấu ngoặc kép, phân tách bằng dấu phẩy.

Cú pháp cơ bản

Mỗi tệp JSON có cấu trúc cơ bản với các quy tắc sau:

  • Object bắt đầu và kết thúc bằng dấu ngoặc nhọn { }
  • Key luôn là chuỗi, đặt trong dấu ngoặc kép
  • Value có thể là string, number, boolean, array, object hoặc null
  • Các cặp key-value phân tách bằng dấu phẩy

Cấu trúc dữ liệu

JSON hỗ trợ các loại dữ liệu cơ bản: string, number, boolean, array, object và null. Cấu trúc có thể lồng nhau, cho phép biểu diễn các đối tượng phức tạp với nhiều tầng lớp.

Tóm tắt: Cú pháp JSON đơn giản với quy tắc rõ ràng về ngoặc nhọn, dấu phẩy và kiểu dữ liệu. Chỉ cần ghi nhớ: đối tượng dùng {}, mảng dùng [], key luôn trong ngoặc kép.

Tệp JSON là gì?

Tệp JSON là tệp văn bản có phần mở rộng .json, lưu trữ dữ liệu có cấu trúc theo định dạng JSON. Định dạng này độc lập ngôn ngữ lập trình, có thể đọc bởi hầu hết các ngôn ngữ như Python, Java, PHP, Ruby và JavaScript.

Lịch sử ngắn gọn

Douglas Crockford giới thiệu JSON vào đầu thập niên 2000 như một giải pháp thay thế nhẹ hơn cho XML. Năm 2013, JSON được chuẩn hóa quốc tế với tiêu chuẩn ECMA-404. Đến năm 2014, RFC 7159 chính thức công nhận JSON là định dạng trao đổi dữ liệu internet.

Ứng dụng phổ biến

JSON thường dùng để lưu trữ dữ liệu trong ứng dụng và truyền giữa server-client qua API. Việc sử dụng JSON thay vì XML giúp giảm thời gian truy xuất dữ liệu và giảm dung lượng gói tin, theo nghiên cứu từ Viblo (nền tảng chia sẻ kiến thức).

Điểm mấu chốt

JSON là định dạng dữ liệu với nhiều loại dữ liệu cơ bản như string, boolean, array, number, object,… giúp tương tác giữa các dịch vụ với nhau một cách hiệu quả.

Điều này cho thấy JSON đã trở thành ngôn ngữ chung giữa các hệ thống khác nhau nhờ tính đơn giản và khả năng tương thích cao.

Tệp JSON có chỉ là tệp văn bản không?

Có, tệp JSON là văn bản thuần túy. Nó dựa trên bảng mã ASCII hoặc UTF-8, không chứa dữ liệu nhị phân. Điều này có nghĩa bạn có thể mở tệp JSON bằng bất kỳ trình soạn thảo văn bản nào như Notepad, VS Code hoặc thậm chí trình duyệt web.

Đặc điểm văn bản

Do là văn bản thuần túy, tệp JSON có ưu điểm:

  • Dễ đọc và chỉnh sửa thủ công
  • Tương thích với mọi hệ điều hành
  • Có thể nén hoặc mã hóa khi cần

Mã hóa UTF-8

UTF-8 là bảng mã phổ biến nhất cho JSON, hỗ trợ đầy đủ ký tự tiếng Việt và các ngôn ngữ khác. Đảm bảo tệp JSON của bạn được lưu với mã hóa UTF-8 để tránh lỗi hiển thị ký tự đặc biệt.

Ưu điểm này khiến JSON trở thành lựa chọn lý tưởng cho các dự án cần hỗ trợ đa ngôn ngữ và tương thích.

Tệp JSON là gì kèm ví dụ?

Ví dụ đơn giản nhất về JSON là cặp key-value cơ bản. Dưới đây là ví dụ thực tế từ TopDev (nền tảng việc làm IT):

{“name”: “TopDev”, “title”: “Việc làm IT cho Top Developers”}

Ví dụ đơn giản

Cấu trúc object với các cặp key-value:

{“name”: “Hoa”, “age”: 28, “active”: true}

Ví dụ phức tạp

Object lồng nhau với mảng:

{“company”: “TechCorp”, “location”: “TP.HCM”, “employees”: [{“name”: “Binh”, “age”: 38}, {“name”: “Lan”, “age”: 30}]}

Cấu trúc trên cho thấy JSON có thể biểu diễn thông tin phức tạp từ đối tượng đơn lẻ đến danh sách nhiều phần tử với thuộc tính riêng.

Lưu ý quan trọng

JSON.stringify() gây lỗi nếu object có tham chiếu vòng (self-reference). Bạn cần xử lý trước khi chuyển đổi để tránh lỗi TypeError.

Làm thế nào để mở và đọc tệp JSON?

Có nhiều cách để mở và đọc tệp JSON, từ công cụ có sẵn trên máy đến các nền tảng trực tuyến miễn phí.

Công cụ trực tuyến

  • JSON Formatter & Validator: Định dạng tự động, tô sáng cú pháp và phát hiện lỗi nhanh chóng
  • JSONLint: Chỉnh sửa cấu trúc JSON và đề xuất lỗi sai theo ITviec Blog (blog công nghệ)
  • JSON Crack: Trực quan hóa dữ liệu JSON dưới dạng cây nhánh chi tiết
  • JSON Hero: Hiển thị cấu trúc theo bố cục cột, dòng hoặc cây
  • Konklone.io: Chuyển đổi JSON sang CSV, XML, YAML nhanh chóng
  • Site24x7 JSON Formatter: Tô sáng màu cây đối tượng để dễ xác định key-value
  • ReqBin: Định dạng chuỗi JSON, kiểm tra lỗi và hiển thị mô tả chi tiết
  • Toptal JSON Formatter: Công cụ miễn phí xác thực và định dạng từ snippet hoặc URL
  • JSON.vn: Bộ công cụ tiếng Việt miễn phí để dọn dẹp, xóa khoảng trắng

Trình soạn thảo văn bản

Bạn có thể mở tệp JSON bằng:

  • Trình duyệt web (kéo thả tệp vào cửa sổ trình duyệt)
  • Notepad hoặc Notepad++
  • Visual Studio Code với extension JSON
  • Công cụ Developer Tools của trình duyệt
Mẹo thực tế

JSONLint không hỗ trợ nhiều tính năng nâng cao, phù hợp khi cần kiểm tra nhanh cú pháp. Konklone.io có thể chậm với file JSON lớn trên 10MB.

Tóm tắt: Mở tệp JSON dễ dàng bằng trình duyệt, Notepad hoặc công cụ trực tuyến như JSONLint để kiểm tra cú pháp. Các công cụ như Konklone.io còn hỗ trợ chuyển đổi sang CSV hoặc XML khi cần.

Các bước xử lý JSON trong JavaScript

Hai hàm quan trọng nhất khi làm việc với JSON trong JavaScript là JSON.stringify() và JSON.parse().

Bước 1: Chuyển Object thành JSON String

JSON.stringify() chuyển JavaScript Object thành chuỗi JSON theo Viblo (nền tảng chia sẻ kiến thức).

var data = {name: “Hoa”, age: 28};
var jsonString = JSON.stringify(data);
// Kết quả: ‘{“name”:”Hoa”,”age”:28}’

Bước 2: Chuyển JSON String thành Object

JSON.parse() chuyển chuỗi JSON thành JavaScript Object để sử dụng trong code.

var jsonString = ‘{“name”:”Hoa”,”age”:28}’;
var data = JSON.parse(jsonString);
// Kết quả: {name: “Hoa”, age: 28}

Bước 3: Xử lý lỗi tham chiếu vòng

Khi object có tham chiếu vòng, JSON.stringify() sẽ gây lỗi. Giải pháp:

  • Sử dụng tham số thứ hai (replacer) để lọc bỏ thuộc tính gây vòng
  • Dùng thư viện như lodash với _.toJSON()
  • Xử lý thủ công trước khi stringify

Việc nắm vững ba bước này giúp bạn xử lý JSON hiệu quả trong hầu hết các trường hợp sử dụng hằng ngày.

Câu hỏi thường gặp

Tệp .JSON được sử dụng để làm gì?

Tệp JSON dùng để lưu trữ và trao đổi dữ liệu có cấu trúc giữa các ứng dụng, cấu hình ứng dụng, và truyền dữ liệu qua API.

JSON khác XML như thế nào?

JSON nhẹ hơn XML, cú pháp đơn giản hơn, và dễ đọc hơn cho con người. JSON giảm thời gian truy xuất dữ liệu và dung lượng so với XML.

Làm thế nào để kiểm tra định dạng JSON hợp lệ?

Sử dụng công cụ trực tuyến như JSONLint, JSON Formatter & Validator hoặc Toptal JSON Formatter để xác thực cú pháp và phát hiện lỗi.

Công cụ nào format JSON miễn phí?

Các công cụ miễn phí phổ biến gồm: JSON Formatter & Validator, Site24x7 JSON Formatter, ReqBin, Toptal JSON Formatter và JSON.vn (hỗ trợ tiếng Việt).

Có thể chuyển JSON sang CSV không?

Có, sử dụng Konklone.io để chuyển đổi JSON sang CSV, XML hoặc YAML nhanh chóng.

JSON parser là gì?

JSON parser là công cụ hoặc hàm phân tích cú pháp JSON, chuyển chuỗi JSON thành đối tượng có thể sử dụng trong chương trình. Trong JavaScript, JSON.parse() là parser có sẵn.

Tải JSON mẫu ở đâu?

Bạn có thể tải ví dụ JSON từ các nguồn như jsonplaceholder.typicode.com hoặc tạo file mẫu đơn giản như {“name”: “Test”, “value”: 123}.

Tóm tắt

JSON là định dạng thiết yếu trong phát triển phần mềm hiện đại, từ cấu hình ứng dụng đến trao đổi dữ liệu qua API. Với cú pháp đơn giản dựa trên cặp key-value, hỗ trợ nhiều kiểu dữ liệu, và tiêu chuẩn mở ECMA-404, JSON đã trở thành ngôn ngữ chung của thế giới lập trình. Điều quan trọng là bạn cần nắm vững cú pháp cơ bản và biết cách sử dụng công cụ trực tuyến phù hợp để định dạng, kiểm tra và chuyển đổi khi cần.

Nắm vững JSON giúp lập trình viên tiết kiệm thời gian debug và tăng hiệu quả trao đổi dữ liệu giữa các hệ thống.