ข้ามไปยังเนื้อหาหลัก
tetono.

เทียบไฟล์ JSON (JSON Diff)

วาง JSON สองชุดเพื่อดูว่าต่างกันที่ไหน โดยไม่สนใจลำดับคีย์และการเว้นวรรค — ทำงานในเบราว์เซอร์ ข้อมูลไม่ถูกส่งออกจากเครื่อง

JSON ที่ 1
JSON ที่ 2

ประมวลผลในเบราว์เซอร์ของคุณ ไม่มีการส่งข้อมูลออก

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

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

งานที่ใช้บ่อยสำหรับนักพัฒนา:

  • เทียบ API response ก่อนและหลังแก้โค้ด เพื่อยืนยันว่าไม่ได้เปลี่ยนสัญญาข้อมูลโดยไม่ตั้งใจ
  • หาสาเหตุบั๊กที่เกิดเฉพาะบางเครื่อง ด้วยการเทียบ response จาก staging กับ production
  • ตรวจไฟล์ตั้งค่า เช่น package.json, ไฟล์ config ของ service หรือ feature flag ระหว่างสองสภาพแวดล้อม
  • รีวิว payload ที่คู่ค้าส่งมา เมื่อโครงสร้างเปลี่ยนแต่เอกสารยังไม่อัปเดต

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

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

วิธีใช้งาน

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

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

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

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

จัดรูปแบบ JSON (JSON Formatter)

จัดรูปแบบ ตรวจสอบ และย่อ JSON สำหรับนักพัฒนา

แปลง JSON ↔ CSV / XML

แปลง JSON เป็น CSV หรือ XML และแปลง CSV กลับเป็น JSON

เทียบข้อความ (Text Diff)

เปรียบเทียบสองข้อความ ดูบรรทัดที่เพิ่ม/ลบ

เข้ารหัส / ถอดรหัส Base64

เข้ารหัส/ถอดรหัส Base64 รองรับภาษาไทย