แปลงฟรี

JSON ฟอร์แมตเตอร์ & เครื่องมือตรวจสอบ

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

ลากและวางไฟล์ JSON ที่นี่

รองรับไฟล์ .json หรือวาง JSON ของคุณในพื้นที่ด้านบน

หรือ

เกี่ยวกับเครื่องมือนี้

การจัดรูปแบบ JSON (มักเรียกว่าการพิมพ์แบบสวยหรือการตกแต่งให้สวยงาม) ใช้ JSON แบบกะทัดรัดและเพิ่มช่องว่าง เช่น การขึ้นบรรทัดใหม่ การเยื้อง การเว้นวรรคที่สอดคล้องกัน เพื่อทำให้ผู้อ่านที่เป็นมนุษย์มองเห็นโครงสร้างได้ Compact JSON เป็นรูปแบบที่เหมาะสมสำหรับการส่งข้อมูล โดยย่อขนาดไบต์บนสายและที่จัดเก็บให้เหลือน้อยที่สุด JSON ที่จัดรูปแบบเป็นรูปแบบที่เหมาะสมสำหรับการตรวจสอบ: ลำดับชั้นที่เยื้องจะเผยให้เห็นโครงสร้างที่ซ้อนกันได้อย่างรวดเร็ว ทำให้ความแตกต่างมีความหมาย และช่วยให้นักพัฒนาสามารถระบุตำแหน่งฟิลด์เฉพาะโดยไม่ต้องแยกวิเคราะห์เอกสารในใจ

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

ตัวจัดรูปแบบยังเสนอการลดขนาด (การดำเนินการผกผัน) ซึ่งจะตัดช่องว่างที่ไม่จำเป็นทั้งหมดเพื่อสร้าง JSON ที่ถูกต้องที่เล็กที่สุด เอาต์พุตแบบย่อมีประโยชน์สำหรับการส่งผ่านการผลิต เอาต์พุตที่จัดรูปแบบแล้วมีประโยชน์สำหรับการพัฒนาและการดีบัก

ทำไมต้องฟอร์แมต JSON

การอ่าน JSON ที่ซ้อนกันอย่างลึกซึ้งโดยไม่มีการเยื้องนั้นเป็นไปไม่ได้เลย เนื่องจากในทางเทคนิคแล้ว โครงสร้างนี้มีอยู่ในทางเทคนิคแต่มองไม่เห็น แม้แต่ JSON ที่ซับซ้อนปานกลางก็ยังได้รับประโยชน์มหาศาลจากการจัดรูปแบบ ผู้ตรวจสอบโค้ด ผู้แก้ไขข้อบกพร่อง API และใครก็ตามที่พยายามทำความเข้าใจเพย์โหลดข้อมูล จำเป็นต้องจัดรูปแบบ JSON เพื่อดูว่ามีอะไรอยู่จริงบ้าง

การจัดรูปแบบยังจับข้อผิดพลาดอีกด้วย หาก JSON ไม่สามารถแยกวิเคราะห์ระหว่างการจัดรูปแบบ ข้อความแสดงข้อผิดพลาดจะระบุตำแหน่งที่แน่นอนของปัญหาไวยากรณ์ ซึ่งมักจะไม่มีเครื่องหมายจุลภาค คีย์ที่ไม่มีเครื่องหมายคำพูด หรือเครื่องหมายจุลภาคต่อท้ายที่หลงทางซึ่งระบบที่สร้างไม่ได้ติดธง ฟอร์แมตเตอร์คือเครื่องมือตรวจสอบ JSON ที่ง่ายที่สุดที่มีอยู่

วิธีใช้งาน

วาง JSON คลิกรูปแบบ

  1. วาง JSON ของคุณ: วาง JSON แบบดิบหรือแบบกะทัดรัดลงในพื้นที่อินพุต การลากและวางไฟล์ .json ก็ใช้งานได้เช่นกัน
  2. เลือกการเยื้อง: ค่าเริ่มต้นคือ 2 ช่องว่าง ใช้ช่องว่าง 4 ช่องสำหรับโปรเจ็กต์ที่เป็นไปตามแบบแผนนั้น หรือใช้แท็บหากเครื่องมือดาวน์สตรีมของคุณต้องการ
  3. รูปแบบ: อินพุตจะถูกแยกวิเคราะห์ผ่าน JSON.parse เพื่อยืนยันความถูกต้อง จากนั้นทำให้เป็นอนุกรมด้วย JSON.stringify และการเยื้องที่เลือก ข้อผิดพลาดในการป้อนข้อมูลทำให้เกิดข้อความแสดงข้อผิดพลาดในการแยกวิเคราะห์ซึ่งระบุตำแหน่งของปัญหา
  4. คัดลอกหรือดาวน์โหลด: คัดลอก JSON ที่จัดรูปแบบแล้วไปยังคลิปบอร์ดหรือบันทึกเป็น .json เอาต์พุตมีโครงสร้างเหมือนกับอินพุต แต่มีช่องว่างสม่ำเสมอ

กรณีการใช้งานทั่วไป

รายละเอียดทางเทคนิค

ตัวจัดรูปแบบใช้ JSON.parse และ JSON.stringify ซึ่งเป็นคู่เดียวกันทุกรันไทม์ JavaScript ที่จัดส่ง การแยกวิเคราะห์เป็นไปตาม RFC 8259 (ข้อกำหนด JSON ปัจจุบัน) ยอมรับ JSON ที่เข้มงวด แต่ปฏิเสธตัวอักษรอ็อบเจ็กต์ JavaScript ความคิดเห็น เครื่องหมายจุลภาคต่อท้าย และส่วนขยาย JSON5 อื่นๆ

JSON.stringify ยอมรับอาร์กิวเมนต์การเยื้อง: ตัวเลข (ช่องว่าง) หรือสตริง (อักขระการเยื้องแบบกำหนดเอง เช่น แท็บ) ฟอร์แมตเตอร์จะแสดงทั้งสองตัวเลือก เอาต์พุตจะถูกจัดเรียงตามลำดับแหล่งที่มาสำหรับออบเจ็กต์ (เนื่องจาก ES2015 รักษาลำดับการแทรกคุณสมบัติไว้ในเอ็นจิ้นหลักทั้งหมด)

ตัวพิมพ์ขอบ: ตัวเลขจำนวนมากเกิน Number.MAX_SAFE_INTEGER จะสูญเสียความแม่นยำเมื่อแยกวิเคราะห์ (ข้อจำกัดของ JSON ที่ทราบ ให้ใช้ค่าสตริงสำหรับ ID ที่เกิน 2^53) การหลีก Unicode ในสตริงจะถูกรักษาไว้ตามตัวอักษร ช่องว่างต่อท้ายจะถูกถอดออกจากแต่ละบรรทัด

แนวทางปฏิบัติที่ดีที่สุด

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

เครื่องมือนี้ตรวจพบข้อผิดพลาด JSON ประเภทใดบ้าง
เครื่องมือตรวจพบเครื่องหมายจุลภาคที่หายไป วงเล็บ/วงเล็บปีกกาที่ไม่ตรงกัน การหลีกเลี่ยงสตริงที่ไม่ถูกต้อง เครื่องหมายจุลภาคต่อท้าย สตริงที่มีเครื่องหมายคำพูดเดี่ยว และการละเมิดไวยากรณ์อื่นๆ ตามข้อกำหนด RFC 8259 JSON
สามารถรองรับไฟล์ JSON ขนาดใหญ่มากได้หรือไม่
ใช่. ตัวจัดรูปแบบจะประมวลผล JSON ในเบราว์เซอร์ของคุณโดยใช้การแยกวิเคราะห์ JavaScript ดั้งเดิม ดังนั้นจึงจัดการไฟล์ที่มีขนาดสูงสุดหลายเมกะไบต์ได้อย่างมีประสิทธิภาพ สำหรับไฟล์ที่มีขนาดใหญ่มาก (50MB+) เวลาในการประมวลผลจะขึ้นอยู่กับอุปกรณ์ของคุณ
รองรับ JSON พร้อมความคิดเห็น (JSONC) หรือไม่
JSON มาตรฐานไม่อนุญาตให้แสดงความคิดเห็น หากข้อมูลที่คุณป้อนมีความคิดเห็น เครื่องมือตรวจสอบจะทำเครื่องหมายว่าเป็นข้อผิดพลาด สำหรับการรองรับ JSONC ให้ลบความคิดเห็นออกก่อนที่จะจัดรูปแบบ
การจัดรูปแบบจะเปลี่ยนค่าข้อมูลของฉันหรือไม่
ไม่ การจัดรูปแบบจะปรับเฉพาะช่องว่างและการเยื้องเท่านั้น ประเภทข้อมูล ค่า และโครงสร้างของคุณยังคงเหมือนเดิมทุกประการ
รองรับฟีเจอร์ JSON5 หรือไม่ (ความคิดเห็น เครื่องหมายจุลภาคต่อท้าย)
ไม่ ตัวจัดรูปแบบเป็นไปตาม RFC 8259 อย่างเคร่งครัด คุณลักษณะ JSON5 ทำให้เกิดข้อผิดพลาดในการแยกวิเคราะห์ หากต้องการทำงานกับ JSON5 ให้แปลงเป็น JSON มาตรฐานก่อนโดยใช้ตัวแยกวิเคราะห์ JSON5
JSON ของฉันถูกอัปโหลดไปยังเซิร์ฟเวอร์หรือไม่
ไม่ การแยกวิเคราะห์และการจัดรูปแบบเกิดขึ้นทั้งหมดในเบราว์เซอร์ของคุณโดยใช้ฟังก์ชัน JSON ในตัว
ตัวเลขจำนวนมากจะสูญเสียความแม่นยำหรือไม่?
JavaScript แทนตัวเลขแบบทศนิยมแบบ 64 บิต ดังนั้นจำนวนเต็มที่มากกว่า 2^53 (ประมาณ 9 พันล้านล้าน) จึงสูญเสียความแม่นยำ สำหรับรหัสหรือค่าจำนวนเต็มขนาดใหญ่อื่นๆ ให้จัดเก็บเป็นสตริงใน JSON
ฉันสามารถจัดเรียงคีย์ตามตัวอักษรได้หรือไม่?
JSON.stringify ไม่เรียงลำดับคีย์ ใช้ขั้นตอนการเรียงลำดับแยกต่างหาก (หรือตัวจัดรูปแบบที่รองรับการเรียงลำดับ) เพื่อเรียงตามตัวอักษรของคีย์ก่อนที่จะสตริง