JSON Diff ด้วยคีย์ที่เรียงลำดับ — ละเว้นลำดับคีย์
เปรียบเทียบเพย์โหลด JSON สองรายการตามโครงสร้าง ไม่ใช่ตามข้อความ: ดูคีย์ที่เพิ่ม ลบ และเปลี่ยนแปลงทุกรายการในเส้นทางของตัวเอง ทั้งหมดในเบราว์เซอร์ของคุณ
ผลลัพธ์
หน้านี้เปิดตัวตรวจสอบความแตกต่าง JSON ด้วย 'คีย์การเรียงลำดับก่อนการเปรียบเทียบ' เปิดอยู่แล้ว โดยเต็มไปด้วยตัวอย่างเล็กๆ น้อยๆ: บันทึกของบุคคลคนเดียวกันเขียนสองครั้งโดยใช้คีย์ในลำดับที่ต่างกัน ดูผลลัพธ์แล้วคุณจะเห็นความแตกต่างเป็นศูนย์ตามที่ควรจะเป็น การเรียงลำดับคีย์ใหม่จะไม่เปลี่ยนความหมายของออบเจ็กต์ JSON
ตามคำจำกัดความ ออบเจ็กต์ JSON คือคอลเล็กชันคู่คีย์/ค่าที่ไม่เรียงลำดับ {"id":1,"name": "Ada"} และ {"name": "Ada" "id":1} อธิบายข้อมูลเดียวกันทุกประการ แต่การเปรียบเทียบที่ไร้เดียงสา เช่น การวางเพย์โหลดทั้งสองที่พิมพ์ออกมาอย่างสวยงามลงในส่วนต่างของข้อความแบบเส้นธรรมดา จะทำเครื่องหมายเกือบทุกบรรทัดว่ามีการเปลี่ยนแปลงทันทีที่ซีเรียลไลเซอร์ของฝ่ายหนึ่งตัดสินใจปล่อยฟิลด์ตามลำดับที่แตกต่างกัน เนื่องจากข้อความที่แตกต่างกันจะเปรียบเทียบอักขระและบรรทัดเท่านั้น ไม่เคยมีความหมาย
เครื่องมือนี้หลีกเลี่ยงกับดักนั้นด้วยการเดินคีย์ของวัตถุแต่ละรายการตามชื่อแทนที่จะตามตำแหน่ง ดังนั้นลำดับคีย์จึงไม่มีทางหลอกมันได้จริงๆ การเรียงลำดับเพียงทำให้การรับประกันนั้นมองเห็นได้ และช่วยให้คุณมีรายการเรียงลำดับตัวอักษรที่สะอาดตาเพื่ออ่านความแตกต่าง แก้ไขพื้นที่ข้อความและดูการอัปเดตแบบสด เมื่อคุณพร้อม ให้เปรียบเทียบเอกสาร JSON สองฉบับของคุณที่นี่แทนตัวอย่าง