วิธีใช้งาน
- วาง JSON ลงในช่องป้อนข้อมูล หรือกด “ลองใช้ตัวอย่าง”
- เลือกการเยื้อง (2 ช่องว่าง, 4 ช่องว่าง หรือแท็บ) และถ้าต้องการ ให้เรียงลำดับคีย์ตามตัวอักษร
- อ่านผลลัพธ์ที่จัดรูปแบบแล้วทางขวา กดปุ่มย่อขนาดเพื่อลบช่องว่างทั้งหมดแทน
- หาก JSON มีข้อผิดพลาดทางไวยากรณ์ ให้แก้ที่บรรทัดและคอลัมน์ที่แสดง จากนั้นคัดลอกหรือดาวน์โหลดผลลัพธ์เป็นไฟล์ .json
วิธีการทำงาน
เครื่องมือจัดรูปแบบจะแยกวิเคราะห์ข้อความของคุณด้วยตัวแยกวิเคราะห์ JSON ในตัวของเบราว์เซอร์ แล้วเขียนออกมาใหม่ตามการเยื้องที่คุณเลือก ผลลัพธ์จึงเป็น JSON ที่ถูกต้องและเยื้องสม่ำเสมอเสมอ Minify เขียนข้อมูลเดียวกันโดยไม่มีช่องว่างหรือตัวขึ้นบรรทัดใหม่ ซึ่งเป็นรูปแบบที่เล็กที่สุดสำหรับส่งผ่านเครือข่ายหรือเก็บในค่าคอนฟิก
เมื่อข้อมูลนำเข้าไม่ใช่ JSON ที่ถูกต้อง ตัวตรวจสอบแบบเข้มงวดขนาดเล็กจะค้นหาปัญหาแรกและรายงานบรรทัดกับคอลัมน์ พร้อมคำอธิบายที่เข้าใจง่ายสำหรับข้อผิดพลาดที่พบบ่อย เช่น จุลภาคท้ายรายการ เครื่องหมายคำพูดเดี่ยว คีย์ที่ไม่ใส่เครื่องหมายคำพูด คอมเมนต์ และค่าอย่าง NaN หรือ undefined ซึ่งมีใน JavaScript แต่ไม่มีใน JSON เบราว์เซอร์รายงานข้อผิดพลาด JSON ของตัวเองด้วยถ้อยคำต่างกัน ตำแหน่งจึงถูกคำนวณโดยเครื่องมือแทนที่จะอ่านจากข้อความของเบราว์เซอร์
ควรรู้ขีดจำกัดของการจัดรูปแบบใหม่ ตัวเลขถูกเก็บเป็นจำนวนจุดลอยตัวความละเอียดสองเท่า จำนวนเต็มที่มากกว่า 9,007,199,254,740,991 (2^53 − 1) เช่น ID ฐานข้อมูลบางค่า จะสูญเสียความละเอียด: 9007199254740993 กลายเป็น 9007199254740992 ควรเก็บ ID เช่นนี้เป็นสตริง หากออบเจ็กต์มีคีย์เดียวกันสองครั้ง ระบบจะเก็บเฉพาะค่าสุดท้าย คีย์ที่ดูเหมือนจำนวนเต็ม ("1", "20") จะถูกวางไว้ก่อนคีย์อื่นเสมอโดย JavaScript ไม่ว่าคุณจะเรียงลำดับหรือไม่ ข้อมูลนำเข้าขนาดไม่กี่เมกะไบต์ทำงานได้ ที่ประมาณ 300,000 ตัวอักษรขึ้นไป การจัดรูปแบบสดจะหยุดชั่วคราว แล้วคุณกด Format แทน เพื่อให้การพิมพ์ยังตอบสนองรวดเร็ว
ตัวอย่าง
การอ่านการตอบกลับจาก API
REST API ส่งข้อมูลมาเป็นบรรทัดยาวบรรทัดเดียว เช่น {"user":{"id":7,"tags":["a","b"]}} เมื่อจัดรูปแบบโดยใช้การเยื้อง 2 ช่องว่าง แต่ละคีย์จะแสดงแยกบรรทัด และอาร์เรย์ tags จะซ้อนอยู่ภายใน ทำให้เห็นโครงสร้างได้ทันที
เปรียบเทียบไฟล์ตั้งค่าสองไฟล์
คอนฟิก JSON สองชุดแสดงการตั้งค่าเดียวกันโดยเรียงลำดับต่างกัน จัดรูปแบบทั้งสองโดยเปิด “เรียงคีย์ A–Z” ผลลัพธ์จะตรงแนวกัน และการเปรียบเทียบข้อความจะแสดงเฉพาะความแตกต่างที่แท้จริง
ค้นหาจุลภาคที่ผิดพลาด
ไฟล์ package.json ที่แก้ไขเองโหลดไม่สำเร็จ เมื่อวางข้อความลงไปจะแสดง “จุลภาคท้ายรายการ” ที่บรรทัด 14 คอลัมน์ 5 ชี้ไปที่จุลภาคหลัง dependency ตัวสุดท้าย
คำถามที่พบบ่อย
ทำไมตัวเลขขนาดใหญ่ถึงเปลี่ยนไปหลังการจัดรูปแบบ?
ตัวแยกวิเคราะห์ JSON ในเบราว์เซอร์เก็บตัวเลขเป็นจำนวนทศนิยม 64 บิต ซึ่งแทนจำนวนเต็มได้อย่างถูกต้องถึง 9,007,199,254,740,991 เท่านั้น จำนวนเต็มที่ใหญ่กว่านั้นจะถูกปัดเป็นค่าที่แทนได้ใกล้ที่สุด หากข้อมูลของคุณมี ID แบบ 64 บิต ให้ส่งเป็นสตริง
จัดรูปแบบ JSON ที่มีคอมเมนต์หรือเครื่องหมายจุลภาคต่อท้าย (JSON5, JSONC) ได้ไหม?
ไม่ เครื่องมือนี้ปฏิบัติตามมาตรฐาน JSON (RFC 8259) อย่างเคร่งครัด และรายงานคอมเมนต์และคอมมาท้ายรายการว่าเป็นข้อผิดพลาดพร้อมตำแหน่ง เพื่อให้คุณลบออกได้ ซึ่งเป็นสิ่งเดียวกับที่ JSON parser ส่วนใหญ่ในภาษาโปรแกรมจะทำ
การจัดเรียงคีย์ทำให้ข้อมูลของฉันเปลี่ยนไปหรือไม่?
ไม่มีการเปลี่ยนแปลงค่า มีเพียงการจัดเรียงลำดับคีย์ภายในออบเจ็กต์เท่านั้น เนื่องจาก JSON กำหนดให้ออบเจ็กต์ไม่มีลำดับ ผลลัพธ์จึงเทียบเท่ากัน ส่วนอาร์เรย์จะไม่มีการจัดเรียงใหม่ เพราะลำดับมีความหมาย
ไฟล์ขนาดใหญ่แค่ไหนที่ฉันจัดรูปแบบได้?
ไฟล์ขนาดหลายเมกะไบต์ทำงานได้ในเบราว์เซอร์เดสก์ท็อปรุ่นปัจจุบัน หากอินพุตยาวเกินประมาณ 300,000 ตัวอักษร เครื่องมือจะรอจนกว่าคุณจะกดปุ่ม Format หรือ Minify แทนการจัดรูปแบบใหม่ทุกครั้งที่พิมพ์ เอาต์พุตขนาดใหญ่มากอาจทำให้กล่องข้อความเลื่อนช้าบนมือถือ
มีการอัปโหลด JSON ของฉันไปที่ใดหรือไม่?
ไม่ การแยกวิเคราะห์และจัดรูปแบบจะทำในเบราว์เซอร์ของคุณด้วย JavaScript โดยข้อความจะไม่ถูกส่งไปยังเซิร์ฟเวอร์หรือจัดเก็บไว้
ความเป็นส่วนตัว
JSON ของคุณถูกแยกวิเคราะห์และจัดรูปแบบในเบราว์เซอร์ของคุณเท่านั้น ไม่ถูกอัปโหลด บันทึก หรือจัดเก็บ และไม่รวมอยู่ในข้อมูลวิเคราะห์