Intro - No stand alone

JSON diff online — so sánh hai đoạn JSON và tìm sự khác biệt

Admin
May 31, 2026
6 phút đọc
4

Bạn có hai phiên bản JSON — một cái từ môi trường staging, một cái từ production — và nghi ngờ chúng đang khác nhau ở đâu đó gây ra bug. Nhìn bằng mắt? Với JSON vài trăm dòng thì chúc may mắn. Dùng tool này? Chưa đến 5 giây là thấy ngay chỗ khác biệt, được tô màu rõ ràng từng dòng.

JSON Diff là tool so sánh hai đoạn JSON và hiển thị chính xác những gì đã thay đổi — key nào bị thêm, key nào bị xoá, giá trị nào bị sửa. Không cần cài đặt, không cần viết script, chạy thẳng trên trình duyệt.

JSON diff là gì?

"Diff" là thuật ngữ trong lập trình chỉ quá trình so sánh hai phiên bản dữ liệu và liệt kê sự khác biệt — tương tự như tính năng "Track Changes" trong Word hay "Compare" trong Git. Với JSON, diff đặc biệt hữu ích vì JSON có cấu trúc phân cấp (nested), khó so sánh thủ công hơn văn bản thuần.

Tool sẽ phân tích cả hai JSON theo từng key, từng giá trị, từng tầng lồng nhau — sau đó tô màu để bạn thấy ngay:

  • Màu xanh lá: Nội dung được thêm vào (chỉ có ở JSON bên phải)
  • Màu đỏ: Nội dung bị xoá (chỉ có ở JSON bên trái)
  • Màu vàng/cam: Nội dung bị sửa đổi (key giống nhau, giá trị khác)

Cách sử dụng

  • Bước 1: Dán JSON gốc (phiên bản cũ / bên trái) vào ô nhập liệu thứ nhất.
  • Bước 2: Dán JSON mới (phiên bản mới / bên phải) vào ô nhập liệu thứ hai.
  • Bước 3: Nhấn Compare — kết quả diff hiện ra ngay với màu sắc phân biệt rõ ràng.
  • Bước 4: Đọc kết quả: xem key nào thêm, key nào mất, giá trị nào thay đổi.

Tool tự động validate cả hai JSON trước khi so sánh — nếu một trong hai bị lỗi cú pháp, bạn sẽ được thông báo ngay để sửa trước.

Ví dụ thực tế

Giả sử bạn có config API trước và sau khi cập nhật:

JSON cũ (trái)JSON mới (phải)
{ "version": "1.0", "debug": true, "timeout": 30, "db": "mysql" }{ "version": "2.0", "debug": false, "timeout": 30, "db": "mysql", "cache": true }

Kết quả diff sẽ hiển thị:

  • 🟡 version: "1.0""2.0" (giá trị thay đổi)
  • 🟡 debug: truefalse (giá trị thay đổi)
  • timeout: 30 (không đổi)
  • db: "mysql" (không đổi)
  • 🟢 cache: true (mới thêm vào)

Khi nào bạn cần JSON diff?

Tình huốngMô tả
So sánh API responseKiểm tra response từ hai môi trường (dev/staging/prod) có khác nhau không để phát hiện bug
Review config thay đổiXem file cấu hình (appsettings.json, docker-compose, package.json…) đã thay đổi những gì so với phiên bản trước
Debug dữ liệu bất ngờSo sánh dữ liệu trước/sau khi qua một bước xử lý để tìm chỗ dữ liệu bị biến đổi không mong muốn
Kiểm tra migrationXác nhận dữ liệu sau khi migrate database hoặc transform pipeline giữ nguyên các field quan trọng
Code reviewXem lock file (package-lock.json, yarn.lock) thay đổi những package nào khi review pull request
Test API contractĐảm bảo schema response của API không bị thay đổi bất ngờ (breaking change) sau khi deploy

Mẹo dùng hiệu quả

  • Format trước khi diff: Nếu hai JSON đang ở dạng minified (một dòng), hãy format chúng trước bằng JSON Formatter — kết quả diff sẽ dễ đọc hơn nhiều.
  • Chú ý thứ tự key trong object: JSON object về mặt kỹ thuật không có thứ tự, nên {"a":1,"b":2}{"b":2,"a":1} về nghĩa là giống nhau. Tool sẽ so sánh theo key, không theo thứ tự xuất hiện.
  • Array thì khác: JSON array thứ tự — [1,2,3][3,2,1] là khác nhau. Tool sẽ báo diff nếu thứ tự phần tử thay đổi.
  • Kiểu dữ liệu cũng được so sánh:"30" (string) và 30 (number) là khác nhau trong JSON — tool sẽ phát hiện và đánh dấu đây là thay đổi kiểu dữ liệu.

Kết luận

Trong quy trình phát triển phần mềm hiện đại, việc so sánh JSON xuất hiện thường xuyên hơn bạn nghĩ — từ debug API, review config, kiểm tra migration đến đảm bảo tính nhất quán dữ liệu giữa các môi trường. Có sẵn một tool làm việc này chính xác và nhanh chóng tiết kiệm không ít thời gian mỗi ngày.

Xem thêm các tool liên quan: JSON Formatter & Validator để làm đẹp và kiểm tra lỗi JSON, hoặc khám phá toàn bộ bộ công cụ tại codetuthub.com/tools.

Toàn Nguyễn
Toàn NguyễnTác giả

Tác giả tại CodeTutHub

Xin chào, mình là Toàn 👋
Là Senior Full-Stack Developer ở HCM, đồng thời là người đứng sau CodeTutHub. Mình viết về những gì mình thực sự dùng hàng ngày — từ Laravel, Next.js, đến cách workflow lập trình với AI agents như Claude Code và Cursor.
Nếu bạn thấy bài này hữu ích, hãy subscribe newsletter hoặc kết nối với mình. Mình luôn sẵn sàng thảo luận về dự án thú vị, cơ hội remote, hoặc đơn giản là chat về tech.
Ho Chi Minh City · Open for collaboration

0 Bình luận

Chưa có bình luận nào. Hãy là người đầu tiên!
Đang trả lời
Xoá bình luận

Bạn có chắc muốn xoá bình luận này?
Hành động này không thể hoàn tác.

Thông báo hệ thống
Thông tin