طريقة الاستخدام
- الصق JSON الأصلي على اليسار وJSON المُعدَّل على اليمين.
- اختر ما إذا كان ترتيب المصفوفة مهمًا.
- اقرأ قائمة القيم المُضافة (+) والمحذوفة (−) والمعدَّلة (~)، أو انسخها كتقرير.
شرح الخيارات
- المقارنة حسب الموضع
- تُقارَن عناصر المصفوفات واحدًا تلو الآخر. لذا فإن إدراج عنصر في البداية يغيّر كل موضع تالٍ.
- تجاهل الترتيب
- تُعامَل المصفوفات كمجموعات غير مرتبة؛ ويُبلَّغ فقط عن العناصر الموجودة في جانب دون الآخر. مفيد لقوائم المعرّفات أو الوسوم أو السجلات.
- المسارات
- تستخدم المسارات صيغة JSONPath: $ هو الجذر، وkey. خاصية، و[0] عنصر مصفوفة، و["a b"] مفتاح ليس اسمًا بسيطًا.
مثال
خذ هذين المستندين، حيث ترتيب المفاتيح مختلف وبعض القيم مختلفة:
{"name": "Ada", "age": 36, "tags": ["x", "y"], "address": {"city": "Rome"}, "first name": "A"}
{"age": 37, "name": "Ada", "tags": ["y", "x"], "address": {"city": "Rome", "zip": "00100"}, "first name": "B", "role": "admin"}
عند المقارنة حسب الموضع تكون النتيجة:
| التغيير | المسار | قبل | بعد |
|---|---|---|---|
| ~ | $.age |
36 | 37 |
| ~ | $.tags[0] |
“x” | “y” |
| ~ | $.tags[1] |
“y” | “x” |
| + | $.address.zip |
“00100” | |
| ~ | $["first name"] |
“A” | “B” |
| + | $.role |
“admin” |
مع تفعيل «تجاهل الترتيب» يختفي تغييرا tags، لأن المصفوفتين تحملان القيمتين نفسيهما. ولا أثر لترتيب المفاتيح في أي من الوضعين. والقيمة التي يتغير نوعها، مثل رقم يصبح سلسلة نصية أو كائن يصبح مصفوفة، يُبلَّغ عنها تغييرًا واحدًا في مسارها.
الأسئلة الشائعة
كيف يختلف هذا عن مقارنة نصية؟
تقارن المقارنة النصية الأسطر، لذا يظهر التنسيق وترتيب المفاتيح كتغييرات. تحلّل «مقارنة JSON» الجانبين وتقارن البيانات نفسها.
هل تُعامَل 1 و"1" على أنهما متساويان؟
لا. الرقم والسلسلة النصية قيمتا JSON مختلفتان، لذا يُبلَّغ عن التغيير بكلتا القيمتين.
هل تُرفع بياناتي؟
لا. يُقارَن كلا المستندين في متصفحك.
الخصوصية
تعمل هذه الأداة بالكامل داخل متصفحك. تُعالَج ملفاتك ونصوصك على جهازك ولا تُرفع أبدًا إلى خوادمنا.