منسِّق ومُضغِّط ومُدقِّق JSON
الصق JSON في الأسفل لتنسيقه أو ضغطه أو التحقق من صحته.
- الصق JSON الخاص بك في الصندوق أعلاه أو اكتبه.
- اضغط "تنسيق" لترتيبه بإزاحة.
- اضغط "ضغط" لإزالة المسافات، أو "تحقق" للتأكد من صحة الصياغة.
- انسخ النتيجة أو نزِّلها عند الانتهاء.
ماذا تفعل؟
"تنسيق" يعيد ترتيب JSON بإزاحة منتظمة (مسافتان أو أربع مسافات أو علامة جدولة — حسب اختيارك). "ضغط" يزيل كل حرف غير ضروري لتكون المخرجات مدمجة قدر الإمكان، وهو مفيد لدمج JSON داخل الروابط، أو تخزينه في عمود قاعدة بيانات واحد، أو تقليل حجم حمولة واجهة البرمجة. "تحقق" يفحص مطابقة المدخل لمواصفة JSON ويشير إلى السطر والعمود الدقيقين لأي خطأ في الصياغة.
مثال
مُدخل مضغوط:
{"name":"Ada","skills":["math","logic"],"active":true} بعد التنسيق بإزاحة مسافتين:
{
"name": "Ada",
"skills": ["math", "logic"],
"active": true
} أخطاء JSON الشائعة وكيفية إصلاحها
معظم أخطاء "JSON غير صالح" ترجع إلى هذه الأسباب. يشير المدقق إلى السطر والعمود المسؤول، وبذلك يتضح السبب المحدد حال معرفة ما تبحث عنه.
- فاصلة زائدة في النهاية. {"a": 1, "b": 2,} غير صالح. لا يسمح JSON بفاصلة بعد آخر عنصر في كائن أو مصفوفة.
- علامات اقتباس مفردة. {'a': 1} غير صالح. يجب أن تستخدم سلاسل JSON ومفاتيحه علامات اقتباس مزدوجة.
- مفاتيح بلا اقتباس. {a: 1} غير صالح — كائنات JavaScript الحرفية تسمح بذلك، لكن JSON لا يسمح.
- فاصلة مفقودة. {"a": 1 "b": 2} غير صالح. يحتاج كل عنصر مجاور إلى فاصلة تفصله عن الآخر.
- تعليقات. // مثل هذه أو /* مثل هذه */ غير مسموح بها في JSON الصارم (RFC 8259). احذفها أو استخدم محلِّل JSONC.
- علامات اقتباس ذكية. قد يستبدل النسخ من معالج نصوص الحرف " بعلامات اقتباس منحنية، وهو ما يرفضه JSON. أعد كتابة علامات الاقتباس أو مرّر النص عبر محرر نص عادي أولاً.
الأسئلة الشائعة
لماذا يظهر JSON الخاص بي غير صالح مع أنه يبدو سليماً؟
معظم أخطاء "غير صالح" تأتي من أحد أربعة أسباب: فاصلة بعد آخر عنصر في مصفوفة أو كائن، علامات اقتباس مفردة بدل مزدوجة، مفاتيح كائن بلا اقتباس، أو فاصلة ناقصة بين العناصر. يشير المدقق إلى السطر والعمود بدقة لتتمكن من الانتقال المباشر إليه.
ما الفرق بين التنسيق والضغط؟
التنسيق يعيد تنظيم JSON بإزاحة وأسطر جديدة ليكون سهل القراءة. الضغط يزيل كل المسافات ليكون الناتج أصغر ما يمكن، وهو مفيد لدمج JSON في الروابط أو تقليل حمولة الشبكة. كلا الناتجين متطابقان دلاليًا، ويختلفان في المسافات فقط.
هل يمكن للأداة التعامل مع ملفات JSON كبيرة جداً؟
نعم، في حدود قدرات متصفحك. المتصفحات الحديثة تحلل ملفات JSON بحجم عشرات الميغابايت بلا مشكلة. العنق الزجاجي عادة هو عرض النتيجة في منطقة النص، لا التحليل نفسه. للملفات التي تتجاوز 50 ميغابايت، قد يتوقف التبويب لحظة أثناء التنسيق.
هل يدعم JSON يحتوي تعليقات (JSONC أو JSON5)؟
لا. تستخدم الأداة مواصفة JSON الصارمة (RFC 8259) التي لا تسمح بالتعليقات أو الفواصل الختامية أو السلاسل بعلامات اقتباس مفردة. إن كان لديك JSONC أو JSON5، أزل الصياغات غير القياسية أولاً أو استخدم محلِّلاً مخصصاً لتلك اللهجة.
هل يغيِّر التنسيق ترتيب المفاتيح؟
لا. تحتفظ المخرجات بترتيب المفاتيح نفسه الموجود في المدخل. في JavaScript يكون تكرار الكائنات مرتباً لمفاتيح السلسلة، ولا تقوم الأداة بأي فرز أو إعادة ترتيب أثناء التنسيق.
هل تحفظون JSON الذي ألصقه هنا؟
لا. لا نحفظ أي JSON تلصقه في الصندوق. ما تُشغِّله عبر التنسيق أو الضغط أو التحقق يُحذف حال إغلاق الصفحة أو تحديثها — بلا سجلات ولا أي أثر لحمولاتك عندنا. يمكنك مراجعة أدوات مطوري المتصفح لمزيد من الاطمئنان.