ข้ามไปยังเนื้อหา
ToolMug

ใช้ ↑ ↓ เพื่อเลื่อน, Enter เพื่อเปิด, Esc เพื่อปิด

จัดรูปแบบและตรวจสอบ JSON

วาง JSON เพื่อจัดให้อ่านง่าย ย่อให้เป็นบรรทัดเดียว หรือค้นหาจุดที่ผิดได้อย่างแม่นยำ พร้อมบรรทัด คอลัมน์ และเหตุผลที่เข้าใจง่าย ตัวเลขขนาดใหญ่ เช่น ID แบบ 64 บิต จะคงไว้ตรงตามที่เขียน และข้อมูลของคุณจะอยู่ในเบราว์เซอร์ของคุณ

ทำงานในเบราว์เซอร์ของคุณ ข้อมูลที่คุณป้อนจะไม่ถูกอัปโหลด

การตั้งค่า

อินพุต

เอาต์พุต

วิธีใช้งาน

  1. วางหรือพิมพ์ JSON ในช่องด้านซ้าย ระบบจะตรวจสอบขณะคุณพิมพ์
  2. เลือกการเยื้อง — 2 ช่องว่าง, 4 ช่องว่าง, แท็บ หรือ ย่อขนาด เพื่อให้เหลือบรรทัดเดียว
  3. ทำเครื่องหมาย เรียงลำดับคีย์ เพื่อเรียงคีย์ของออบเจ็กต์ตามตัวอักษร ช่วยให้เปรียบเทียบเอกสารสองฉบับได้ง่ายขึ้น
  4. หากมีข้อผิดพลาด ข้อความจะแสดงบรรทัดและคอลัมน์ มิฉะนั้นให้คัดลอกหรือดาวน์โหลดผลลัพธ์

คำอธิบายตัวเลือก

การเยื้อง
2 ช่องว่างเป็นรูปแบบที่ใช้บ่อยที่สุด (npm, Prettier); 4 ช่องว่างตรงกับ json.dumps(indent=4) ของ Python; ย่อขนาดจะลบช่องว่างทั้งหมดเพื่อให้ไฟล์มีขนาดเล็กที่สุด
เรียงลำดับคีย์
เรียงคีย์ของออบเจ็กต์ตามค่าที่ถอดรหัสแล้วในทุกระดับ จะไม่เปลี่ยนลำดับของอาร์เรย์
ตัวเลขขนาดใหญ่
เก็บตัวเลขตามที่เขียนไว้ ตัวจัดรูปแบบจำนวนมากจะแปลง JSON เป็นตัวเลข JavaScript ซึ่งทำให้ 12345678901234567890 กลายเป็น 12345678901234567000 โดยไม่แจ้งให้ทราบ

ข้อผิดพลาด JSON ที่พบบ่อยและวิธีแก้ไข

ข้อความ สาเหตุที่พบบ่อย
อักขระที่ไม่คาดคิด ' ใช้เครื่องหมายคำพูดเดี่ยวแทนเครื่องหมายคำพูดคู่
จุลภาคต่อท้าย มีจุลภาคหลังรายการสุดท้าย: [1, 2,]
อักขระที่ไม่คาดคิด / คอมเมนต์ // ที่คัดลอกมาจาก JavaScript
เอกสารจบเร็วเกินไป ขาด } หรือ ] มักเกิดจากการคัดลอกมาไม่ครบ
อักขระควบคุมต้อง escape มีแท็บหรือการขึ้นบรรทัดจริงอยู่ในสตริง — ใช้ \t หรือ \n
พบเนื้อหาที่ไม่คาดคิดหลังจบเอกสาร วางเอกสาร JSON สองชุดติดกัน หรือมีข้อความหลังวงเล็บปิด

ตัวอย่าง

อินพุต:

{"id":9007199254740993,"name":"Ada","tags":["math","code"]}

จัดรูปแบบด้วย 2 ช่องว่าง — สังเกตว่า ID ไม่เปลี่ยนแปลง:

{
  "id": 9007199254740993,
  "name": "Ada",
  "tags": [
    "math",
    "code"
  ]
}

คำถามที่พบบ่อย

ทำไมจึงขึ้นว่า "JSON ไม่อนุญาตให้มีจุลภาคต่อท้าย"?

JSON มาตรฐาน (RFC 8259) ไม่อนุญาตให้มีจุลภาคหลังรายการสุดท้ายของออบเจ็กต์หรืออาร์เรย์ แม้ JavaScript จะอนุญาตก็ตาม ให้ลบจุลภาคก่อนเครื่องหมายปิด } หรือ ]

ใช้เครื่องหมายคำพูดเดี่ยวหรือคอมเมนต์ใน JSON ได้หรือไม่?

ไม่ได้ สตริง JSON ต้องใช้เครื่องหมายคำพูดคู่ และคอมเมนต์ไม่ใช่ส่วนหนึ่งของรูปแบบนี้ ไฟล์อย่าง tsconfig.json ยอมรับสิ่งเหล่านี้ได้เพราะเครื่องมือใช้ตัวแยกวิเคราะห์แบบผ่อนปรน (JSONC)

JSON ของฉันถูกส่งไปยังเซิร์ฟเวอร์หรือไม่?

ไม่ การแยกวิเคราะห์และการจัดรูปแบบเกิดขึ้นในเบราว์เซอร์ของคุณ ดังนั้นการตอบกลับจาก API โทเค็น และไฟล์การกำหนดค่าจึงอยู่บนอุปกรณ์ของคุณ

ทำไม ID ขนาดใหญ่ของฉันจึงเปลี่ยนไปเมื่อใช้เครื่องมืออื่น?

JavaScript จัดเก็บตัวเลขเป็นเลขทศนิยมแบบ floating point 64 บิต ซึ่งแม่นยำได้ถึงเพียง 9,007,199,254,740,991 เท่านั้น เครื่องมือนี้ไม่แปลงตัวเลข ดังนั้น ID ที่เกินค่านี้จะยังคงเดิม

รองรับไฟล์ขนาดใหญ่แค่ไหน?

เอกสารขนาดหลายเมกะไบต์จัดรูปแบบได้ทันทีบนแล็ปท็อป สำหรับไฟล์ขนาดหลายร้อยเมกะไบต์ เครื่องมือบรรทัดคำสั่งอย่าง jq จะเหมาะกว่า

ความเป็นส่วนตัว

เครื่องมือนี้ทำงานในเบราว์เซอร์ของคุณทั้งหมด ไฟล์และข้อความของคุณได้รับการประมวลผลบนอุปกรณ์ของคุณ และจะไม่ถูกอัปโหลดไปยังเซิร์ฟเวอร์ของเรา

เครื่องมือที่เกี่ยวข้อง