JSON Toolkit

الأسئلة الشائعة

تجمع أكثر الأسئلة تكرارًا حول الأدوات على هذا الموقع وحول مواصفة JSON، مرتبة حسب السيناريو، مع إجابة يمكنك التصرف بناءً عليها مباشرة بدلًا من استنتاج غامض.

25 مقالة

مقالات هذه الفئة

هل يمكن أن يحتوي JSON على تعليقات

RFC 8259 ليس فيه صياغة للتعليقات، لذا يجعل `//` وتعليقات الكتل `JSON.parse` يرمي خطأ. استخدم JSON5 أو JSONC، أو حقل `_comment`، أو وصف Schema، أو YAML بدلًا من ذلك.

مبتدئقراءة نحو 3 دقيقةحُدِّث في 2026-10-30

لماذا تسبب الفاصلة الزائدة كسر JSON

الفواصل الزائدة قانونية في كائنات JavaScript الحرفية وقاتلة في JSON. هنا الخطأ الدقيق، وقواعد RFC 8259 التي تسببه، وثلاثة إصلاحات تصمد فعلًا.

مبتدئقراءة نحو 3 دقيقةحُدِّث في 2026-10-30

هل يكسر BOM تحليل JSON

BOM بترميز UTF-8 هو ثلاثة بايتات غير مرئية، فيفشل JSON.parse عند الحرف الأول ويبلّغ عن السطر 1 العمود 1، ما يجعل الملف يبدو فارغًا أو مقطوعًا.

مبتدئقراءة نحو 4 دقيقةحُدِّث في 2026-10-30

هل يمكن أن يظهر NaN أو Infinity في JSON

JSON ليس فيه إلا حرفيات أعداد عشرية. يحوّل JSON.stringify كلا من NaN وInfinity إلى null دون تحذير، ولهذا يتكرر ظهور "حقل الرقم يكون null أحيانًا" في الإنتاج.

مبتدئقراءة نحو 3 دقيقةحُدِّث في 2026-10-30

لماذا تفقد الأعداد الصحيحة الكبيرة دقتها

الأعداد الصحيحة فوق 2^53-1 تفقد دقتها في JSON.parse. معرّفات snowflake وأرقام الطلبات وbigints قواعد البيانات كلها تصطدم بذلك، فاحفظها كنصوص من الطرف إلى الطرف.

متوسطقراءة نحو 4 دقيقةحُدِّث في 2026-11-04

لماذا يتحول النص الصيني إلى \u4e2d\u6587

هروب \u4e2d\u6587 هو Unicode قانوني، وليس فشل ترميز. النص المشوه الحقيقي يبدو مختلفًا، والتمييز بينهما يحدد ما تحتاج فعلًا إلى إصلاحه.

مبتدئقراءة نحو 3 دقيقةحُدِّث في 2026-10-30

JSON مقابل JSON5 مقابل JSONC

مجموعات شاملة صارمة بالترتيب: JSONC يضيف التعليقات؛ وJSON5 يضيف الاقتباسات المفردة والمفاتيح بلا اقتباسات والفواصل الزائدة والأعداد الست عشرية. والاختيار الخاطئ يكسر API، لا محررك.

مبتدئقراءة نحو 4 دقيقةحُدِّث في 2026-10-30

JSON أم YAML

JSON يحدد البنية بالأقواس وYAML بالمسافات البادئة: الآلات تأخذ JSON، والبشر الذين يحررون التهيئة يأخذون YAML. التعليقات والمراسي وبنية المستندات المتعددة لا تنجو من التحويل.

مبتدئقراءة نحو 4 دقيقةحُدِّث في 2026-10-30

JSONPath أم JSON Pointer

JSON Pointer عنوان فريد يمكنك تخزينه كمفتاح؛ JSONPath لغة استعلام. استخدام الخاطئ منهما يكسر تحديثات التهيئة أو يعيد اختراع JSONPath معطوب.

متوسطقراءة نحو 4 دقيقةحُدِّث في 2026-10-30

ما الذي يحله JSON Schema فعليًا

Schema يحكم البنية والأنواع، لا المعنى التجاري. يمنع الحقول الناقصة والأنواع الخاطئة والقيم الخارجة عن النطاق، بينما تبقى قواعد مثل أن يكون المبلغ أكبر من صفر في الكود.

متوسطقراءة نحو 4 دقيقةحُدِّث في 2026-10-30

draft-07 أم 2020-12

2020-12 هو الإصدار الحالي ويضيف $defs وprefixItems وunevaluatedProperties، لكن أدوات كثيرة ما زالت تتحدث draft-07 فقط. اختر وفق ما تدعمه سلسلة أدواتك بأكملها.

متقدمقراءة نحو 4 دقيقةحُدِّث في 2026-10-30

توليد أنواع TypeScript من Schema

json-schema-to-typescript وquicktype يصدران ملف .d.ts بأمر واحد، لكنه مسودة: الاختيارية والاتحادات وadditionalProperties والتواريخ تحتاج إلى مراجعة بشرية.

متوسطقراءة نحو 4 دقيقةحُدِّث في 2026-10-30

تسريع تحليل JSON الكبير

التحسين بترتيب خاطئ يجعل كل تبديل مكتبة بلا فائدة. قس الشبكة والتحليل والعرض كلًا على حدة، ثم قلّل التحليلات وقلّص الحمولة واستعمل البث.

متوسطقراءة نحو 5 دقيقةحُدِّث في 2026-10-30

ما هو حقن __proto__

JSON.parse يعامل __proto__ كمفتاح عادي؛ والضرر يحدث في دمج تكراري يكتب إلى Object.prototype، فيرث كل كائن خصائص المهاجم.

متقدمقراءة نحو 5 دقيقةحُدِّث في 2026-10-30

كيف تحدث XSS عبر JSON

JSON لا يُنفَّذ بنفسه أبدًا. تحدث XSS في اللحظة التي تتعامل فيها معه كـHTML — بدمج السلسلة على الخادم، أو innerHTML في الواجهة، أو إدراج JSON مباشرة داخل وسم script.

متوسطقراءة نحو 4 دقيقةحُدِّث في 2026-10-30

هل يرفع منسّق JSON عبر الإنترنت بياناتي

لا تحتاج إلى قراءة سياسة الخصوصية لتعرف. افتح لوحة الشبكة، وجرّب الصفحة دون اتصال، ثم أعد التحميل لترى هل بقي شيء. دقيقتان وثلاثة فحوص، بلا حاجة إلى ثقة.

مبتدئقراءة نحو 3 دقيقةحُدِّث في 2026-10-30

ما حجم ملف JSON الذي يستطيع المتصفح معالجته

لا يوجد حد ثابت؛ القيد هو ميزانية ذاكرة تبويبك. ملف بحجم 20MB يصير عادةً 60–100MB بعد التحليل، وDOM المميز بإبراز النحو قد يضاعف ذلك مرة أخرى.

مبتدئقراءة نحو 3 دقيقةحُدِّث في 2026-10-30

ما البنية التي ينبغي أن تستخدمها استجابة API

الكائنات المجردة نظيفة حتى تحتاج إلى بيانات وصفية؛ الأغلفة الكاملة آمنة لكنها مطوّلة. لمعظم المشاريع استخدم حالة HTTP للنتائج وغلافًا ثابتًا للبيانات.

متوسطقراءة نحو 4 دقيقةحُدِّث في 2026-10-30

null أم حذف الحقل

`null` تعني أن الحقل موجود بلا قيمة؛ وحذفه يعني أن الحقل غير موجود. أجسام PATCH ودمج التهيئة والتعبئة المسبقة للنماذج هي حيث يعض الفرق.

متوسطقراءة نحو 3 دقيقةحُدِّث في 2026-10-30