Chắc hẳn bạn đã từng thấy những file có đuôi .json khi làm việc với web hay ứng dụng di động. Định dạng này xuất hiện khắp nơi từ cấu hình ứng dụng đến API của các dịch vụ lớn. Douglas Crockford giới thiệu JSON từ năm 2000 như một cách đơn giản để gửi và nhận dữ liệu giữa các hệ thống. Bài viết này sẽ hướng dẫn bạn hiểu cú pháp JSON chuẩn, cách đọc và xử lý file JSON, cùng các công cụ trực tuyến hữu ích để làm việc hiệu quả hơn.

Tên đầy đủ: JavaScript Object Notation · Năm phát minh: 2000 · Người sáng tạo: Douglas Crockford · Loại dữ liệu: Text-based, human-readable · Phần mở rộng: .json

Tổng quan nhanh

1Định nghĩa
  • Định dạng trao đổi dữ liệu nhẹ, dựa trên cú pháp JavaScript (ITviec Blog)
2Kiểu dữ liệu
  • Hỗ trợ string, number, object, array, boolean, null (ITviec Blog)
3Quy tắc quan trọng
  • Tất cả key phải trong dấu ngoặc kép đôi (ITviec Blog)
4Tiêu chuẩn

Bốn đặc điểm cốt lõi giúp phân biệt JSON với các định dạng khác: cấu trúc key-value, kiểu dữ liệu hạn chế nhưng đủ dùng, quy tắc nghiêm ngặt về cú pháp, và tính dễ đọc cho cả người và máy.

Bảng dưới đây tổng hợp các thông số kỹ thuật cốt lõi của định dạng JSON, bao gồm tên gọi, tiêu chuẩn RFC và các kiểu dữ liệu được hỗ trợ.

Thuộc tính Giá trị
Tên viết tắt JSON
Tên đầy đủ JavaScript Object Notation
RFC tiêu chuẩn 8259
Năm phát minh 2000
Người sáng tạo Douglas Crockford
MIME type application/json
Hỗ trợ kiểu dữ liệu string, number, object, array, boolean, null
Phần mở rộng .json

Định dạng của file JSON là gì?

JSON (JavaScript Object Notation) là định dạng trao đổi dữ liệu nhẹ, dựa trên cú pháp của JavaScript. Định dạng này được thiết kế để người đọc dễ hiểu và máy tính dễ xử lý. Chuẩn RFC 8259 do IETF công bố năm 2017 chính là văn bản định nghĩa JSON hiện nay (JSONFormatter.org).

Cú pháp cơ bản JSON

Cú pháp JSON xoay quanh cặp key-value, tức mỗi phần tử gồm một tên (key) và giá trị đi kèm (value). Key phải là chuỗi trong dấu ngoặc kép đôi, còn value có thể là string, number, boolean, null, object hoặc array. Object JSON bắt đầu bằng dấu ngoặc nhọn mở { và kết thúc bằng dấu ngoặc nhọn đóng } (ITviec Blog).

  • Tất cả key phải được bao bởi dấu ngoặc kép đôi — không dùng ngoặc đơn hay không có ngoặc
  • Tên thuộc tính không bắt đầu bằng số, không chứa ký tự đặc biệt
  • Các cặp key-value phân cách nhau bằng dấu phẩy
  • Không cho phép comment như trong JavaScript
Quy tắc vàng

Nếu bạn thấy key không có dấu ngoặc kép, đó không phải JSON hợp lệ. Trình kiểm tra cú pháp sẽ báo lỗi ngay.

Đặc điểm chính của định dạng

Boolean trong JSON là true hoặc false, không đặt trong ngoặc kép. Number có thể là số nguyên (150) hoặc thập phân (8.5), dùng dấu chấm làm phần thập phân. String là chuỗi Unicode trong ngoặc kép đôi, hỗ trợ các ký tự escape như \n, \t, \”. Giá trị null biểu diễn sự vắng mặt của dữ liệu (ITviec Blog).

Đặc điểm nổi bật nhất của JSON là tính độc lập ngôn ngữ: dù bạn dùng Python, Java, PHP hay Ruby, đều có thể đọc và tạo JSON. Điều này khiến JSON trở thành cầu nối lý tưởng giữa các hệ thống khác nhau.

JSON (JavaScript Object Notation) is a lightweight data-interchange format. It is easy for humans to read and write.

— json.org (Trang chủ chính thức của JSON)

File JSON có chỉ là file text không?

Đúng, file JSON thực chất là file text thuần túy mã hóa UTF-8. Bạn có thể mở chúng bằng bất kỳ trình soạn thảo văn bản nào như Notepad, VS Code hay Sublime Text. Tuy nhiên, điểm khác biệt quan trọng là JSON có cấu trúc nghiêm ngặt — không phải text tự do mà tuân theo quy tắc cú pháp cụ thể (ITviec Blog).

So sánh với file text thông thường

File text thông thường (.txt) chứa dữ liệu không có cấu trúc — máy tính hiểu đó là văn bản nhưng không biết các phần tử liên quan thế nào. Trong khi đó, JSON định nghĩa rõ cấu trúc: đâu là key, đâu là value, đâu là array, đâu là object. Nhờ vậy, chương trình có thể đọc và xử lý tự động mà không cần parse thủ công (Strerr.com).

Cách phân biệt

Một file có phải JSON hợp lệ hay không có thể kiểm tra qua trình validator trực tuyến như JSONLint. File text thường mở ra thấy nguyên văn nội dung, còn file JSON đúng chuẩn sẽ parse thành cấu trúc cây rõ ràng. Dấu hiệu nhận biết rõ nhất: nếu thấy cặp key-value với dấu ngoặc kép, đó rất có thể là JSON (JSONFormatter.org).

Lưu ý

File JSON chuẩn phải tuân theo RFC 8259. Một file có phần mở rộng .json nhưng không đúng cú pháp sẽ không được các API chấp nhận.

File JSON dùng để làm gì?

JSON phục vụ ba mục đích chính trong thực tế: trao đổi dữ liệu giữa client và server, lưu trữ cấu hình ứng dụng, và đọc/ghi dữ liệu trong cơ sở dữ liệu NoSQL như MongoDB. Đây là định dạng mặc định của phần lớn REST API hiện đại (ITviec Blog).

Ứng dụng trao đổi dữ liệu

Khi bạn gọi một API, server thường trả về dữ liệu dưới dạng JSON. Ví dụ, khi đăng nhập vào một ứng dụng, server có thể trả về thông tin người dùng như { “username”: “kimoanh”, “email”: “user@example.com”, “website”: “json.org” } (Viblo). Cấu trúc này giúp cả frontend và backend hiểu cùng một ngôn ngữ.

Sử dụng trong web và API

Hầu hết framework frontend như React, Vue, Angular đều nhận dữ liệu dạng JSON từ API. Các ngôn ngữ backend như Node.js, Python, Java đều có thư viện native để đọc và ghi JSON. Điều này tạo nên hệ sinh thái mạnh mẽ xung quanh định dạng này (Strerr.com).

Ngoài web, JSON còn dùng trong cấu hình ứng dụng (package.json của Node.js, settings.json của VS Code), file log, và export dữ liệu từ các dịch vụ như Stripe, Firebase.

Ví dụ về file JSON kèm định dạng

Xem qua ví dụ thực tế là cách nhanh nhất để hiểu cấu trúc JSON. Phần này trình bày từ đơn giản đến phức tạp, giúp bạn nắm vững cách tổ chức dữ liệu.

Ví dụ đơn giản

Một object JSON đơn giản mô tả thông tin sinh viên:

{
  "ho_ten": "Nguyễn Sinh Viên",
  "gioi_tinh": "Nam",
  "diem_trung_binh": 8.5
}

Ví dụ này gồm ba cặp key-value: ho_ten (string), gioi_tinh (string), và diem_trung_binh (number). Dễ thấy cú pháp rất gọn gàng và dễ đọc (NenTang.vn).

Ví dụ phức tạp với array và object lồng nhau

Dữ liệu thực tế thường phức tạp hơn, với array chứa nhiều object:

{
  "employees": [
    {
      "name": "Trần Thị A",
      "age": 28,
      "gender": "Nữ"
    },
    {
      "name": "Lê Văn B",
      "age": 32,
      "gender": "Nam"
    }
  ]
}

Ví dụ này có object chính chứa key “employees” với giá trị là một array. Mỗi phần tử trong array là một object riêng biệt với các thuộc tính riêng. Cấu trúc lồng nhau này cho phép biểu diễn dữ liệu phức tạp một cách có tổ chức (TopDev Blog).

Mẹo thực tế

Khi gặp file JSON dài, hãy dùng công cụ formatter để thụt lề tự động — cấu trúc lồng nhau sẽ hiện rõ ràng hơn nhiều so với đọc một dòng liền. Nếu bạn muốn tìm hiểu sâu hơn về cách cấu trúc dữ liệu này hoạt động, bạn có thể xem thêm thông tin về cmanga là gì.

Cách mở và chuyển đổi file JSON dễ đọc

Nếu file JSON nhỏ, bạn mở bằng Notepad là đủ. Nhưng với file lớn hàng nghìn dòng, cần công cụ chuyên dụng để format, validate và chuyển đổi sang định dạng khác.

Công cụ mở JSON online

Nhiều trang web miễn phí giúp bạn làm việc với JSON hiệu quả. JSONLint và JSONFormatter.org cho phép dán code và kiểm tra cú pháp tức thì, hiển thị lỗi nếu có. JSONViewer.stack.hu hiển thị dữ liệu dạng cây rõ ràng, thuận tiện để khám phá cấu trúc lồng nhau. JSON Crack cung cấp đồ thị trực quan sinh động giúp hiểu mối quan hệ giữa các phần tử (ITviec Blog).

MiniWebtool JSON Formatter cung cấp bốn chức năng chính: định dạng làm đẹp (beautify), nén (minify), xác thực (validate), và sửa lỗi (fix). Strerr JSON Formatter có thêm khả năng khôi phục JSON đã nén về dạng đầy đủ (MiniWebtool).

Chuyển đổi sang PDF hoặc readable format

Để chia sẻ JSON với người không kỹ thuật, bạn có thể chuyển sang định dạng dễ đọc hơn. JSONFormatter.org hỗ trợ chuyển đổi JSON sang CSV, XML hoặc YAML. Aspose JSON Formatter hoạt động trên mọi hệ điều hành qua trình duyệt, dùng thụt lề 2 khoảng trắng và tạo view dạng cây. Site24x7 JSON Tool tô sáng cú pháp, xác thực và hiển thị cấu trúc đối tượng theo dạng tree view (Site24x7).

VS Code với extension JSON Tools cũng là lựa chọn tốt nếu bạn làm việc thường xuyên với JSON trên máy tính.

So sánh nhanh

JSON Crack vượt trội về trực quan hóa nhưng thiếu tính năng nâng cao so với JSON Formatter — tùy nhu cầu mà chọn công cụ phù hợp.

Các bước thực hành với JSON

Để giúp bạn làm quen với JSON, dưới đây là các bước thực hành từ cơ bản đến nâng cao:

Ưu điểm định dạng JSON

  • Nhẹ, dễ đọc cho người và máy
  • Hỗ trợ đa ngôn ngữ lập trình
  • Chuẩn RFC 8259, được công nhận rộng rãi
  • Cấu trúc key-value trực quan, dễ hiểu
  • Parse nhanh, tương thích cao

Nhược điểm

  • Không hỗ trợ comment — không thể thêm ghi chú trong file
  • Không có kiểu date native — ngày tháng phải biểu diễn dạng string
  • Không có namespace — dễ xung đột tên key
  • Không phù hợp với dữ liệu quan hệ phức tạp
  1. Bước 1 — Tạo file JSON đơn giản: Mở trình soạn thảo văn bản, tạo file với cấu trúc { “key”: “value” }, lưu với đuôi .json
  2. Bước 2 — Kiểm tra cú pháp: Dán nội dung vào JSONLint hoặc jsonformatter.org để xác nhận file hợp lệ
  3. Bước 3 — Định dạng làm đẹp: Nếu file bị nén thành một dòng, dùng MiniWebtool để beautify với thụt lề 2 hoặc 4 khoảng trắng
  4. Bước 4 — Khám phá cấu trúc: Dùng JSONViewer.stack.hu để xem dạng cây, hoặc JSON Crack để trực quan hóa đồ thị
  5. Bước 5 — Chuyển đổi khi cần: Khi cần dùng trong hệ thống khác (XML, CSV), sử dụng chức năng convert của JSONFormatter.org

Với năm bước trên, bạn đã có đủ kỹ năng cơ bản để làm việc với JSON trong hầu hết tình huống thực tế.

Tóm tắt: JSON là định dạng trao đổi dữ liệu nhẹ được chuẩn hóa theo RFC 8259. Với cú pháp key-value trong ngoặc nhọn, hỗ trợ sáu kiểu dữ liệu cơ bản, JSON đã trở thành ngôn ngữ chung của các REST API hiện đại. Người mới bắt đầu: dùng jsonformatter.org để validate và format. Lập trình viên cần trực quan hóa: thử JSON Crack. Ai cần chuyển đổi sang XML/CSV: dùng JSONFormatter.org.

Douglas Crockford discovered JSON in 2000 and popularized it as a lightweight data-interchange format. He never claimed to invent it, calling himself a “discoverer” instead.

— Douglas Crockford, trong các bài thuyết trình về JSON

Tổng kết

JSON từ một phát hiện tình cờ của Douglas Crockford đã trở thành nền tảng của web hiện đại. Với cú pháp rõ ràng, hỗ trợ đa ngôn ngữ, và hệ sinh thái công cụ phong phú, JSON không chỉ dành cho lập trình viên chuyên nghiệp. Bất kỳ ai làm việc với dữ liệu — từ nhà phân tích marketing đến quản lý dự án — đều có lúc cần đọc hoặc chỉnh sửa file JSON. Nắm vững cú pháp cơ bản và biết cách dùng công cụ online sẽ giúp bạn tự tin xử lý mọi tình huống. Điều quan trọng là thực hành: bắt đầu với ví dụ đơn giản, kiểm tra bằng validator, rồi dần mở rộng sang cấu trúc phức tạp hơn.

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

JSON là gì dành cho người mới?

JSON (JavaScript Object Notation) là định dạng văn bản dùng để lưu trữ và trao đổi dữ liệu. Dữ liệu được tổ chức theo cặp key-value, ví dụ { “tên”: “Minh”, “tuổi”: 25 }. Định dạng này dễ đọc cho người và dễ xử lý cho máy tính.

Phần mở rộng file JSON là gì?

Phần mở rộng chuẩn của file JSON là .json. Khi lưu file, bạn đặt tên như config.json, data.json hoặc users.json. Trình hệ điều hành sẽ nhận diện đây là file JSON và có thể đề xuất ứng dụng phù hợp để mở.

Cách kiểm tra định dạng JSON trực tuyến?

Bạn có thể dùng JSONLint, jsonformatter.org, hoặc JSON Formatter của Site24x7. Chỉ cần dán nội dung JSON vào khung nhập liệu, bấm nút kiểm tra — nếu hợp lệ sẽ hiển thị thông báo xác nhận, nếu có lỗi sẽ chỉ rõ vị trí và loại lỗi.

Công cụ chỉnh sửa JSON miễn phí?

Nhiều công cụ miễn phí phổ biến: JSONFormatter.org (định dạng, xác thực, chuyển đổi), JSONLint (validate), JSONViewer.stack.hu (xem dạng cây), MiniWebtool (format, nén, validate, fix). VS Code với extension JSON cũng là lựa chọn tốt trên máy tính.

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

JSON nhẹ hơn XML, cú pháp ngắn gọn hơn, và dễ đọc hơn. XML dùng thẻ mở và đóng như <name>Minh</name>, còn JSON dùng key-value { “name”: “Minh” }. JSON không có namespace như XML nhưng đổi lại parse nhanh hơn nhiều.

File JSON có thể lớn bao nhiêu?

Về lý thuyết, JSON không giới hạn kích thước. Tuy nhiên, file lớn hơn vài MB sẽ chậm khi parse. Trong thực tế, nếu file vượt 10-50 MB, bạn nên cân nhắc chia nhỏ hoặc dùng streaming thay vì đọc toàn bộ vào bộ nhớ.

JSON hỗ trợ encoding nào?

JSON chuẩn RFC 8259 quy định phải dùng UTF-8. Các hệ thống cũ có thể dùng UTF-16 hoặc UTF-32, nhưng để tương thích tốt nhất, luôn dùng UTF-8 khi tạo file JSON mới.


Related reading: Công cụ định dạng JSON online · JSON là gì

Ngoài cú pháp cơ bản, JSON còn áp dụng mạnh mẽ trong SEO thông qua hướng dẫn JSON-LD dữ liệu SEO, giúp tối ưu hóa kết quả tìm kiếm theo Schema.org.