Định dạng & Kiểm tra JSON

Dán JSON để định dạng đẹp, nén hoặc kiểm tra. Lỗi được chỉ đích danh đến đúng dòng và cột, kèm giải thích dễ hiểu. Tất cả đều chạy ngay trên trình duyệt của bạn.

Cập nhật
Thụt lề
Mở tệp
Dán JSON hoặc tải mẫu
JSON đã định dạng sẽ hiện ở đây.

Dữ liệu của bạn không bao giờ rời khỏi máy tính. Mọi xử lý diễn ra 100% cục bộ trong trình duyệt của bạn.

Công cụ này có hữu ích không?0.0 0 lượt đánh giá
Kiểm tra dữ liệu JSON theo JSON SchemaKiểm tra JSON Schema →

Cách dùng Định dạng JSON

  1. Dán JSON vào ô JSON đầu vào, kéo thả tệp .json vào đó, hoặc nhấn Tải mẫu.
  2. Kết quả tự cập nhật khi bạn gõ. Chọn Làm đẹp với 2 dấu cách, 4 dấu cách hoặc Tab, hoặc chọn Nén để xóa toàn bộ khoảng trắng.
  3. Nếu JSON không hợp lệ, lỗi sẽ được hiển thị kèm dòng và cột. Nhấn Đi tới lỗi để chọn đúng ký tự sai trong phần đầu vào.
  4. Chuyển sang Cây để khám phá dữ liệu lồng nhau. Nhấn vào giá trị bất kỳ để sao chép đường dẫn của nó (ví dụ $.variants[0].color).
  5. Nhấn Sao chép hoặc Tải xuống để lưu kết quả.

Công cụ định dạng JSON là gì?

Công cụ định dạng JSON (còn gọi là làm đẹp JSON hoặc pretty-print) nhận JSON ở dạng gọn hoặc lộn xộn và viết lại với cách thụt lề, xuống dòng nhất quán để con người dễ đọc. API thường trả về JSON nén trên một dòng để tiết kiệm dung lượng. Định dạng lại là bước đầu tiên khi bạn gỡ lỗi một phản hồi, xem lại tệp cấu hình hoặc viết tài liệu. Công cụ này cũng làm được điều ngược lại: Nén sẽ xóa mọi khoảng trắng và dấu xuống dòng không cần thiết để có dung lượng nhỏ nhất có thể.

Định dạng và kiểm tra luôn đi cùng nhau. Bộ định dạng phân tích đầu vào theo cùng quy tắc nghiêm ngặt như JSON.parse(), nên bất cứ thứ gì được chấp nhận ở đây cũng sẽ được mọi trình phân tích tuân thủ chuẩn chấp nhận (RFC 8259).

Các lỗi JSON thường gặp và cách sửa

Khi phân tích thất bại, bộ kiểm tra sẽ báo đúng dòng và cột, làm nổi bật ký tự lỗi và giải thích vấn đề. Đây là những lỗi mà công cụ bắt được thường xuyên nhất:

LỗiSaiĐúng
Dấu phẩy thừa cuối cùng[1, 2, 3,][1, 2, 3]
Dấu nháy đơn{'id': 1}{"id": 1}
Khóa không có nháy{id: 1}{"id": 1}
Chú thích{"a": 1 // ghi chú}Xóa chú thích
Thiếu dấu phẩy{"a": 1 "b": 2}{"a": 1, "b": 2}
Số đặc biệtNaN, Infinity, 01null, 1
Xuống dòng trong chuỗi"dòng 1⏎dòng 2""dòng 1\nthe dòng 2"

Nhiều lỗi trong số này hợp lệ trong object của JavaScript, JSON5 hoặc YAML nhưng không hợp lệ trong JSON. Đây là nguyên nhân phổ biến gây nhầm lẫn khi bạn sao chép dữ liệu từ mã nguồn.

Cảnh báo ngoài cú pháp

Có những JSON về mặt kỹ thuật vẫn hợp lệ nhưng tiềm ẩn rủi ro. Bộ kiểm tra cảnh báo về khóa trùng lặp (hầu hết trình phân tích lặng lẽ chỉ giữ giá trị cuối cùng) và về số nguyên lớn hơn 253 (9.007.199.254.740.991), vì JavaScript không thể biểu diễn chính xác các số này. Đây là vấn đề thường gặp với ID cơ sở dữ liệu 64-bit. Nếu bạn thấy cảnh báo này, hãy gửi các ID đó dưới dạng chuỗi.

Làm đẹp hay nén: nên dùng cái nào?

Hãy dùng JSON đã làm đẹp cho mọi thứ con người cần đọc: tệp cấu hình trong Git (để diff theo từng dòng), tài liệu và gỡ lỗi. Thụt lề hai dấu cách là quy ước phổ biến nhất trong dự án JavaScript, còn bốn dấu cách thường thấy trong json.dumps(indent=4) của Python. Hãy dùng JSON đã nén cho dữ liệu truyền qua mạng và lưu trữ. Lưu ý rằng nén gzip hoặc Brotli trên máy chủ đã loại bỏ phần lớn chênh lệch dung lượng, nên với các tệp bạn commit, khả năng đọc thường quan trọng hơn.

Chế độ xem dạng cây và sắp xếp khóa

Với tài liệu lớn, chế độ Cây cho phép bạn thu gọn object và mảng, đồng thời xem số lượng phần tử ngay lập tức. Sắp xếp khóa sẽ xếp các khóa của mọi object theo thứ tự bảng chữ cái ở tất cả các cấp. Tính năng này hữu ích khi so sánh hai tài liệu JSON trong Diff Checker, vì thứ tự khóa khác nhau sẽ tạo ra các khác biệt gây nhiễu. Cần định dạng khác? Chuyển sang YAML, CSV hoặc kiểu TypeScript.

Cũng được tìm dưới tên: json beautifier, kiểm tra json, json validator, làm đẹp json, nén json, json minify, format json, trình xem json.

Các công cụ dùng kèm tốt với Định dạng JSON

  • Định dạng JavaScript — Giải nén và định dạng lại JavaScript, JSON hoặc JSX với kiểu thụt lề và dấu ngoặc bạn chọn, hoặc loại bỏ khoảng trắng và chú thích bằng bộ thu gọn đã được kiểm chứng.
  • Mã hóa / Giải mã Base64 — Chuyển văn bản sang Base64 và ngược lại với hỗ trợ đầy đủ UTF-8 (dấu tiếng Việt, emoji), chuyển sang Base64 an toàn cho URL, hoặc thả tệp vào để lấy chuỗi Base64 hay data URI.
  • Kiểm tra JSON Schema — Dán schema và dữ liệu JSON để xem chính xác giá trị nào vi phạm quy tắc nào, hoặc tạo schema ban đầu từ dữ liệu mẫu.
  • Kiểm Thử JSONPath — Nhập truy vấn JSONPath và xem ngay nó chọn ra những gì, kèm đường dẫn chính xác của từng kết quả.

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

JSON của tôi có được tải lên máy chủ không?
Không. Việc phân tích, định dạng và kiểm tra đều chạy hoàn toàn trên trình duyệt của bạn bằng JavaScript. Không có gì được gửi đi hoặc lưu lại, nên an toàn với phản hồi API và tệp cấu hình chứa dữ liệu nội bộ.
Tại sao bộ kiểm tra từ chối chú thích và dấu phẩy thừa cuối cùng?
Chuẩn JSON (RFC 8259) không cho phép các thứ này. Các định dạng như JSON5, JSONC (dùng trong cài đặt VS Code và tsconfig.json) và YAML thì có hỗ trợ, nhưng trình phân tích nghiêm ngặt như JSON.parse() sẽ báo lỗi.
Tôi có thể định dạng tệp lớn đến mức nào?
Tệp vài megabyte được định dạng xong trong chưa đến một giây trên thiết bị hiện đại. Tính năng tô màu cú pháp sẽ tự tắt với kết quả rất lớn để trang vẫn phản hồi nhanh.
Việc định dạng có làm thay đổi dữ liệu của tôi không?
Chỉ có khoảng trắng thay đổi, trừ khi bạn bật Sắp xếp khóa, khi đó thứ tự khóa của object sẽ bị đổi. Có hai lưu ý đến từ chính JavaScript: khóa trùng lặp sẽ chỉ giữ giá trị cuối cùng, và số nguyên lớn hơn 253 sẽ mất độ chính xác. Công cụ sẽ cảnh báo bạn khi một trong hai trường hợp này xảy ra.
JSON khác gì so với object JavaScript?
JSON là định dạng văn bản với quy tắc nghiêm ngặt hơn: khóa phải là chuỗi có nháy kép, chuỗi chỉ dùng nháy kép, và không cho phép hàm, undefined, chú thích hay dấu phẩy thừa cuối cùng.
Tôi có thể cài Định dạng JSON như một ứng dụng web và dùng khi không có mạng không?
Có. Định dạng JSON là một ứng dụng web (PWA) có thể cài đặt — cài trực tiếp từ trình duyệt, không cần tải từ cửa hàng ứng dụng. Trên Chrome hoặc Edge (Windows, macOS, Linux, ChromeOS) hoặc Android, bấm Cài đặt ứng dụng ở đầu trang này; trên iPhone và iPad, dùng Chia sẻ → Thêm vào Màn hình chính; trên Mac, dùng File → Add to Dock trong Safari 17 trở lên. Sau đó ứng dụng mở trong cửa sổ riêng với biểu tượng riêng, và vì chạy hoàn toàn trên trình duyệt nên vẫn hoạt động khi không có mạng. Firefox trên máy tính không thể cài ứng dụng web. Cách cài đặt hoạt động thế nào.

Công cụ liên quan