คำจำกัดความ
JSON คืออะไร?
JSON (JavaScript Object Notation) คือรูปแบบข้อมูลที่ใช้กันอย่างแพร่หลายในการแลกเปลี่ยนข้อมูลระหว่างเซิร์ฟเวอร์และเว็บแอปพลิเคชัน มีโครงสร้างที่อ่านง่าย รองรับ object, array, string, number, boolean และ null
เครื่องมือ JSON Formatter ช่วยจัดรูปแบบ JSON ให้สวยงาม อ่านง่าย พร้อมตรวจสอบความถูกต้องของ syntax อัตโนมัติ
วาง JSON ที่ต้องการจัดรูปแบบในช่อง input แล้วกดปุ่ม 'จัดรูปแบบ' หรือ 'ย่อ JSON' ตามต้องการ
- 1 วาง JSON ในช่อง input
- 2 เลือกขนาดการเยื้อง (2 spaces, 4 spaces, หรือ Tab)
- 3 กดปุ่ม 'จัดรูปแบบ' เพื่อ beautify หรือ 'ย่อ JSON' เพื่อ minify
- 4 คัดลอกผลลัพธ์ด้วยปุ่ม 'คัดลอก'
- จัดรูปแบบ JSON ให้สวยงาม (Beautify/Pretty Print)
- ย่อ JSON (Minify) เพื่อลดขนาดไฟล์
- ตรวจสอบ JSON ถูกต้อง (Validate) พร้อมแจ้งตำแหน่งข้อผิดพลาด
- เลือกขนาดการเยื้อง (2/4 spaces หรือ Tab)
- ไฮไลท์สี syntax สำหรับอ่านง่าย
กรณีใช้งาน
กรณีใช้งานจริง
- Debug response จาก REST API ที่ส่งกลับมาเป็น JSON บรรทัดเดียวยาวๆ อ่านไม่ออก
- ตรวจสอบ config file เช่น package.json หรือ tsconfig.json ว่ามี syntax ผิดตรงไหน
- เตรียม JSON payload สำหรับทดสอบ API ผ่าน Postman หรือ curl ให้ถูกต้อง
- Minify JSON ก่อนบันทึกลง localStorage หรือส่งผ่าน WebSocket เพื่อลดขนาดข้อมูล
- แปลง JSON ที่ copy มาจาก database query ให้อ่านง่ายก่อนวิเคราะห์ข้อมูล
เคล็ดลับ
เคล็ดลับและแนวปฏิบัติที่ดี
- ใช้ indent 2 spaces เป็นมาตรฐานในโปรเจกต์ JavaScript/TypeScript เพื่อความสอดคล้องกับ ecosystem
- ตรวจสอบ trailing comma เสมอ เพราะ JSON มาตรฐานไม่รองรับ comma ตัวสุดท้ายก่อน {'}'} หรือ {']'}
- ใช้ Minify เมื่อต้องส่ง JSON ผ่าน API เพราะลดขนาด bandwidth ได้ 30-60% เมื่อเทียบกับ pretty print
- ใส่ข้อมูลทีละส่วนเมื่อ debug JSON ขนาดใหญ่ เพื่อหาจุดที่ syntax ผิดได้เร็วขึ้น
- ใช้ JSON Formatter ร่วมกับ diff tool เพื่อเปรียบเทียบ JSON สองชุดที่จัดรูปแบบเหมือนกัน
หลีกเลี่ยง
ข้อผิดพลาดที่พบบ่อย
- ใช้ single quotes แทน double quotes สำหรับ key และ string ซึ่ง JSON ไม่รองรับ ต้องใช้ "" เท่านั้น
- ลืมลบ comment ออกจาก JSON เพราะ JSON มาตรฐานไม่รองรับ // หรือ /* */ (ใช้ JSONC แทน)
- ใส่ trailing comma หลัง element สุดท้ายใน array หรือ object ทำให้ parse ไม่ผ่าน
- ส่ง undefined หรือ function ใน JavaScript object แล้วคาดว่า JSON.stringify จะเก็บค่าไว้ ซึ่งจะถูกตัดออก
เปรียบเทียบ
เปรียบเทียบกับเครื่องมืออื่น
เครื่องมือ JSON Formatter ออนไลน์ของเราทำงานบนเบราว์เซอร์ทั้งหมด ไม่ต้องติดตั้งโปรแกรมเพิ่ม ใช้ได้ทันทีจากทุกอุปกรณ์ ต่างจาก VS Code หรือ IDE ที่ต้องติดตั้ง extension เพิ่ม
เมื่อเทียบกับ jq command-line หรือ Prettier ที่ต้องตั้งค่าโปรเจกต์ เครื่องมือนี้เหมาะสำหรับงาน ad-hoc ที่ต้องการจัดรูปแบบเร็วๆ โดยเฉพาะเมื่อทำงานบนเครื่องที่ไม่ได้ตั้งค่า dev environment ไว้
เครื่องมือนี้ประมวลผลข้อมูลในเบราว์เซอร์ของคุณ ไม่มีการส่งข้อมูลไปยังเซิร์ฟเวอร์ อย่างไรก็ตาม ไม่ควรใช้กับข้อมูลที่เป็นความลับสำคัญ เช่น password หรือ API key