JSON Formatter
Định dạng, nén và xác thực JSON
JSON là gì?
JSON (JavaScript Object Notation) là một định dạng trao đổi dữ liệu nhẹ, không phụ thuộc ngôn ngữ, đã trở thành tiêu chuẩn de facto cho các API web, tệp cấu hình và nhật ký có cấu trúc. Nó sử dụng một ngữ pháp nhỏ, dễ đoán — chuỗi trong dấu ngoặc kép, số, boolean, null, mảng và đối tượng — mà mọi ngôn ngữ hiện đại đều có thể phân tích một cách tự nhiên.
Định dạng (in đẹp) làm cho JSON dễ đọc; nén loại bỏ khoảng trắng để thu nhỏ kích thước cho việc truyền tải hoặc lưu trữ. Xác thực phân tích đầu vào và báo cáo lỗi cú pháp đầu tiên mà trình duyệt của bạn gặp phải, điều này giống như mã chạy thực hiện dưới bề mặt.
Trường hợp sử dụng
- Gỡ lỗi API — dán một payload phản hồi và in đẹp để phát hiện các trường bị sai hình dạng hoặc null không mong muốn trong vài giây.
- Xem xét mã — định dạng cấu hình đã nén để người xem có thể đọc nó trực tiếp mà không cần thiết lập một plugin IDE cục bộ.
- Nén nhật ký — nén các thân yêu cầu trước khi đưa vào các trường nhật ký có kích thước hạn chế (CloudWatch, Datadog, Honeycomb).
- Giảng dạy JSON — chuyển đổi giữa in đẹp và nén để cho sinh viên thấy các hình thức cấu trúc và vận chuyển của cùng một tài liệu.
Ví dụ
{"name":"Alice","scores":[95,88,73],"active":true}{
"name": "Alice",
"scores": [
95,
88,
73
],
"active": true
}{
"id": 1,
"tags": ["json", "tool"],
"meta": null
}{"id":1,"tags":["json","tool"],"meta":null}Câu hỏi thường gặp
JSON là gì?
JSON (JavaScript Object Notation) là một định dạng trao đổi dữ liệu nhẹ. Nó trông giống như một đối tượng JavaScript — các khóa trong dấu ngoặc kép, các giá trị có thể là chuỗi, số, boolean, null, mảng hoặc các đối tượng khác. JSON là định dạng mặc định cho hầu hết các API hiện đại.
Sự khác biệt giữa JSON đã định dạng và JSON đã nén là gì?
JSON đã định dạng (hoặc 'in đẹp') thêm khoảng trắng và ngắt dòng để dễ đọc cho con người. JSON đã nén loại bỏ tất cả khoảng trắng để giảm kích thước tệp — hữu ích khi truyền tải JSON qua mạng hoặc lưu trữ trong cơ sở dữ liệu. Cả hai hình thức đều giống nhau về mặt chức năng với một bộ phân tích.
Tùy chọn thụt lề có tác dụng gì?
Thụt lề đặt số lượng khoảng trắng được sử dụng cho mỗi cấp độ lồng nhau khi định dạng. 2 khoảng trắng là phổ biến nhất (được sử dụng bởi JavaScript và nhiều hướng dẫn phong cách). 4 khoảng trắng cũng phổ biến. Đặt thụt lề thành 0 sẽ làm cho đầu ra bị nén hiệu quả.
Tại sao JSON của tôi hiển thị lỗi phân tích?
Các nguyên nhân phổ biến: dấu phẩy cuối (không được phép trong JSON nghiêm ngặt), dấu nháy đơn quanh chuỗi (phải là dấu nháy kép), khóa không được đặt trong dấu ngoặc kép, chú thích (JSON không có cú pháp chú thích), hoặc các ký tự đặc biệt như NaN hoặc Infinity (sử dụng null hoặc số được chuyển thành chuỗi thay thế).
JSON của tôi có được tải lên đâu không?
Không. Phân tích, định dạng, nén và xác thực đều chạy hoàn toàn trong trình duyệt của bạn bằng cách sử dụng API JSON gốc. Dữ liệu đầu vào của bạn không bao giờ rời khỏi thiết bị của bạn, và Wenee không ghi lại gì trên máy chủ — an toàn để sử dụng với các payload nhạy cảm.
Tôi có thể sử dụng điều này cho các tệp JSON rất lớn không?
Có — giới hạn là bộ nhớ trình duyệt của bạn. Hầu hết các trình duyệt xử lý thoải mái JSON lên đến vài megabyte. Đối với các payload hàng trăm megabyte, một công cụ máy tính để bàn như jq nhanh hơn bất kỳ trình định dạng dựa trên trình duyệt nào.
