Định dạng JSON

Định dạng, xem xét và sao chép JSON. Dữ liệu của bạn luôn ở trong trình duyệt.

Dữ liệu & định dạng
Đang chuẩn bị trình soạn thảo…
Đầu vào
Đầu ra
Kết quả sẽ xuất hiện ở đây.

Cách sử dụng

  1. Dán JSON, mở tệp hoặc thử ví dụ.
  2. Điều chỉnh thiết lập. Kết quả cập nhật khi bạn nhập.
  3. Sao chép hoặc tải xuống kết quả đã định dạng.

Tìm hiểu JSON

JSON là định dạng văn bản để trao đổi dữ liệu có cấu trúc. Bạn thường gặp nó trong phản hồi API, tệp cấu hình và các bản ghi xuất ra. Tập kiểu giá trị nhỏ giúp JSON thuận tiện cho việc chuyển dữ liệu giữa các ngôn ngữ lập trình khác nhau.

Định dạng giúp dễ xem xét cấu trúc hơn. Thụt lề cho biết giá trị nào thuộc cùng nhóm; xuống dòng giúp dễ đọc các bản ghi lồng nhau. Những lựa chọn trình bày này không thay đổi dữ liệu được biểu diễn bởi một tài liệu hợp lệ.

Giá trị và cấu trúc

Một tài liệu JSON chứa một giá trị. Giá trị đó có thể là đối tượng hoặc mảng, nhưng chuỗi, số, giá trị boolean hay null cũng hợp lệ ở gốc. Đối tượng liên kết tên dạng chuỗi với giá trị; mảng chứa các giá trị theo một thứ tự có ý nghĩa. Cả hai đều có thể lồng nhau.

KiểuVí dụÝ nghĩa
Đối tượng{"name": "Ada"}Các thuộc tính có tên trong dấu ngoặc nhọn.
Mảng["red", "blue"]Dãy có thứ tự trong dấu ngoặc vuông.
Chuỗi"Hello, world"Văn bản đặt trong dấu ngoặc kép.
Số-12.5e2Số thập phân, có thể có số mũ.
Giá trị logictrue / falseMột trong hai giá trị logic.
Giá trị nullnullGiá trị null tường minh; không phải thuộc tính bị bỏ qua.

Những quy tắc cú pháp cần đúng

Dùng dấu ngoặc kép cho tên thuộc tính và chuỗi. Dấu hai chấm tách tên khỏi giá trị; dấu phẩy tách các thành viên đối tượng và phần tử mảng. Không thêm dấu phẩy sau thành viên hoặc phần tử cuối cùng. Chú thích, dấu nháy đơn và biểu thức JavaScript nằm ngoài JSON nghiêm ngặt.

Các giá trị literal true, false và null được viết thường. Số dùng ký hiệu thập phân với dấu trừ, phần lẻ và số mũ tùy chọn. Số 0 đứng đầu, dấu cộng đứng đầu, NaN và Infinity không hợp lệ. Trong chuỗi, hãy dùng ký tự thoát cho dấu ngoặc kép, dấu gạch chéo ngược và ký tự điều khiển; xuống dòng phải được viết bằng chuỗi thoát như \n.

Tên trong đối tượng nên là duy nhất để trao đổi dữ liệu đáng tin cậy. Các ứng dụng đọc dữ liệu khác nhau có thể giữ các giá trị khác nhau khi tên bị lặp. Công cụ định dạng báo các mục trùng lặp và giữ nguyên chúng để bạn quyết định cách xử lý. Chỉ kiểm tra cú pháp không thể xác nhận tài liệu có khớp hợp đồng API hay JSON Schema hay không.

Những gì được giữ nguyên khi định dạng

DevToolsy kiểm tra đầu vào và điều chỉnh khoảng trắng quanh các token gốc. Công cụ giữ nguyên văn bản số như 900719925474099312345, 19.9900, 1e+400 và -0, cùng các chuỗi thoát gốc. Điều này tránh việc làm tròn do phân tích rồi tuần tự hóa lại số thành giá trị dấu phẩy động của JavaScript. Ứng dụng đọc kết quả vẫn tự quyết định độ chính xác số của mình.

Thụt lề, ký tự kết thúc dòng LF hoặc CRLF và xuống dòng cuối là các quy ước đầu ra. Sắp xếp khóa là thay đổi riêng và tùy chọn: tính năng này sắp xếp đệ quy các thành viên đối tượng theo tên đã giải mã bằng phép so sánh xác định, có phân biệt hoa thường. Thứ tự mảng và thứ tự tương đối của tên trùng lặp vẫn giữ nguyên. Mục đích là hỗ trợ đọc và so sánh thay đổi; đây không phải lược đồ chuẩn hóa cho chữ ký mật mã.

Một phản hồi API nhỏ
Đầu vào gọn
{"name":"Ada","roles":["developer","reviewer"],"active":true}
Đã định dạng · 2 dấu cách
{
  "name": "Ada",
  "roles": [
    "developer",
    "reviewer"
  ],
  "active": true
}

Thụt lề thay đổi cách trình bày. Tên thuộc tính, giá trị và thứ tự mảng vẫn giữ nguyên.

Giới hạn xử lý

Tối đa 5 MiB đầu vào UTF-8, 20 MiB đầu ra, 128 cấp lồng nhau, 250.000 token được quét và 10 giây mỗi lần chạy. Tài liệu lớn có thể cần thiết bị mạnh hơn.

?

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

Tự động định dạng có thay đổi đầu vào của tôi không?

Không. Tính năng cập nhật kết quả chỉ đọc sau một khoảng dừng ngắn, đồng thời giữ đầu vào đúng như bạn đã viết. Tự động định dạng được bật ban đầu. Tắt để chạy thủ công bằng Định dạng JSON hoặc Ctrl/⌘ + Enter.

Điều gì xảy ra khi JSON của tôi chưa hoàn chỉnh?

Kết quả hợp lệ gần nhất vẫn hiển thị khi bạn chỉnh sửa. Sao chép và Tải xuống bị vô hiệu hóa cho đến khi đầu vào cùng thiết lập hiện tại tạo ra kết quả hợp lệ. Chọn lỗi để chuyển đến vị trí trong đầu vào.

Định dạng có làm tròn số lớn hoặc thay đổi chuỗi thoát không?

Không. Token số gốc và cách viết chuỗi thoát được giữ nguyên. Điều này bao gồm số nguyên dài, số 0 cuối phần thập phân, ký hiệu số mũ và số 0 âm. Ứng dụng khác có thể diễn giải những số này với độ chính xác khác nhau.

Sắp xếp khóa có đổi cả thứ tự mảng không?

Không. Sắp xếp khóa chỉ áp dụng đệ quy cho đối tượng. Mảng giữ nguyên trình tự và các tên trùng lặp giữ nguyên thứ tự tương đối. Mặc định tính năng sắp xếp bị tắt.

Công cụ định dạng có sửa chú thích hoặc dấu phẩy thừa cuối cùng không?

Công cụ chấp nhận JSON nghiêm ngặt và báo cú pháp không hợp lệ thay vì đoán cách sửa. Chú thích, chuỗi dùng nháy đơn, khóa không có dấu ngoặc kép và dấu phẩy thừa cuối cùng cần được sửa trong đầu vào.

JSON Beautifier có giống JSON Formatter không?

Có. Trên trang này, beautify, pretty-print và format đều có nghĩa là thêm thụt lề và xuống dòng để JSON dễ đọc. Để có tài liệu gọn, hãy dùng Rút gọn JSON.

JSON có rời khỏi thiết bị của tôi không?

Văn bản được dán và tệp cục bộ được xử lý trong trình duyệt. DevToolsy không tải JSON của bạn lên máy chủ hoặc lưu lịch sử tài liệu. Sao chép hoặc tải xuống kết quả trước khi rời đi nếu cần giữ lại.

Tìm công cụ tiếp theo

Ngôn ngữ

Đổi ngôn ngữ? Nội dung làm việc hiện tại sẽ bị xóa. Hãy sao chép hoặc tải xuống dữ liệu cần giữ trước.