JSON Toolkit

پرسش‌های متداول

پرتکرارترین پرسش‌ها درباره ابزارهای این سایت و مشخصات JSON را بر اساس سناریو گردآوری می‌کند و به‌جای نتیجه‌گیری مبهم، پاسخی می‌دهد که می‌توانید مستقیم روی آن اقدام کنید.

25 مقاله

مقالات این دسته

پرسش‌های متداول ابزار: داده، فایل و خروجی

آیا داده آپلود می‌شود، چه حجم فایلی کار می‌کند، چیزی محلی ذخیره می‌شود، چرا چینی به escape تبدیل می‌شود: ده پرسش که مرزهای واقعی یک ابزار آنلاین JSON را روشن می‌کند.

مقدماتیحدود 10 دقیقه مطالعهبه‌روزرسانی 2026-10-30

پرسش‌های متداول پرس‌وجو و اعتبارسنجی: JSONPath و Schema

آیا پرس‌وجوی مسیر باید از JSONPath یا Pointer استفاده کند، چگونه بین Patch و Merge Patch انتخاب کنیم، Schema چه چیزی را می‌تواند مسدود کند، و نسخه draft را چگونه انتخاب کنیم — همه در یک مرور توضیح داده شده است.

متوسطحدود 12 دقیقه مطالعهبه‌روزرسانی 2026-10-30

پرسش‌های متداول عملکرد و امنیت: کند، لرزان و داده نامعتمد

چرا فایل JSON چند ده مگابایتی باز نمی‌شود، شبیه‌سازی عمیق چقدر گران است، چگونه از آلودگی __proto__ جلوگیری کنیم و XSS از کجا وارد می‌شود — ده نتیجه کمک اولیه که بر اساس نشانه مرتب شده‌اند.

متوسطحدود 13 دقیقه مطالعهبه‌روزرسانی 2026-10-30

آیا JSON می‌تواند کامنت داشته باشد

RFC 8259 نحو کامنت ندارد، پس `//` و کامنت بلوکی باعث پرتاب خطا توسط JSON.parse می‌شوند. از JSON5 یا JSONC، فیلد `_comment`، توضیح Schema یا YAML استفاده کنید.

مقدماتیحدود 3 دقیقه مطالعهبه‌روزرسانی 2026-10-30

چرا ویرگول انتهایی JSON را می‌شکند

ویرگول انتهایی در object literalهای جاوااسکریپت قانونی و در JSON مرگبار است. خطای دقیق، دستور زبان RFC 8259 که باعثش می‌شود و سه اصلاح که واقعاً دوام می‌آورد اینجاست.

مقدماتیحدود 3 دقیقه مطالعهبه‌روزرسانی 2026-10-30

آیا BOM تجزیه JSON را می‌شکند

BOM در UTF-8 سه بایت نامرئی است، پس JSON.parse روی نخستین نویسه شکست می‌خورد و خط ۱ ستون ۱ را گزارش می‌کند، که فایل را خالی یا ناقص نشان می‌دهد.

مقدماتیحدود 4 دقیقه مطالعهبه‌روزرسانی 2026-10-30

آیا NaN یا Infinity می‌تواند در JSON ظاهر شود

JSON فقط literalهای عدد اعشاری دارد. JSON.stringify بدون هشدار NaN و Infinity را به null تبدیل می‌کند، و همین است که «فیلد عددی گاهی null است» مدام در محیط تولید ظاهر می‌شود.

مقدماتیحدود 3 دقیقه مطالعهبه‌روزرسانی 2026-10-30

چرا عددهای صحیح بزرگ دقت را از دست می‌دهند

عددهای صحیح بالاتر از 2^53-1 در JSON.parse دقت را از دست می‌دهند. شناسه‌های snowflake، شماره سفارش و bigintهای پایگاه‌داده همه به این مشکل می‌خورند، پس آن‌ها را سرتاسر به‌صورت رشته نگه دارید.

متوسطحدود 4 دقیقه مطالعهبه‌روزرسانی 2026-11-04

چرا چینی به \u4e2d\u6587 تبدیل می‌شود

escape به‌صورت \u4e2d\u6587 یونیکد قانونی است، نه خرابی رمزگذاری. mojibake واقعی متفاوت به نظر می‌رسد و تشخیص این دو تعیین می‌کند واقعاً چه چیزی باید اصلاح شود.

مقدماتیحدود 3 دقیقه مطالعهبه‌روزرسانی 2026-10-30

JSON در برابر JSON5 در برابر JSONC

ابرمجموعه‌های سخت‌گیر به ترتیب: JSONC کامنت اضافه می‌کند؛ JSON5 تک‌گیومه، کلید بی‌گیومه، ویرگول انتهایی و عدد هگز اضافه می‌کند. انتخاب اشتباه API را می‌شکند، نه ویرایشگر را.

مقدماتیحدود 4 دقیقه مطالعهبه‌روزرسانی 2026-10-30

JSON یا YAML

JSON با آکولاد و YAML با تورفتگی مرزبندی می‌کند: ماشین‌ها JSON می‌گیرند، انسان‌هایی که پیکربندی ویرایش می‌کنند YAML. کامنت، anchor و ساختار چندسندی از تبدیل جان سالم به در نمی‌برند.

مقدماتیحدود 4 دقیقه مطالعهبه‌روزرسانی 2026-10-30

JSONPath یا JSON Pointer

JSON Pointer آدرسی یکتاست که می‌توانید به‌عنوان کلید ذخیره‌اش کنید؛ JSONPath یک زبان پرس‌وجوست. استفاده از انتخاب اشتباه به‌روزرسانی پیکربندی را می‌شکند یا JSONPath ناقصی بازمی‌سازد.

متوسطحدود 4 دقیقه مطالعهبه‌روزرسانی 2026-10-30

JSON Schema واقعاً چه چیزی را حل می‌کند

Schema ساختار و نوع را حکومت می‌کند، نه معنای کسب‌وکار. فیلد گم‌شده، نوع اشتباه و enum بیرون از بازه را متوقف می‌کند، اما قواعدی مانند مبلغ بالای صفر در کد می‌مانند.

متوسطحدود 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 تولید می‌کنند، اما پیش‌نویس است: اختیاری بودن، union، additionalProperties و تاریخ‌ها نیاز به بازبینی انسانی دارند.

متوسطحدود 4 دقیقه مطالعهبه‌روزرسانی 2026-10-30

سریع‌تر کردن تجزیه JSON بزرگ

بهینه‌سازی با ترتیب اشتباه هر تعویض کتابخانه‌ای را بی‌فایده می‌کند. شبکه، تجزیه و رندر را جدا اندازه بگیرید، سپس تجزیه‌ها را کم کنید، payload را کوچک کنید و جریان دهید.

متوسطحدود 5 دقیقه مطالعهبه‌روزرسانی 2026-10-30

تزریق __proto__ چیست

JSON.parse با __proto__ به‌عنوان کلید معمولی برخورد می‌کند؛ آسیب در ادغام بازگشتی‌ای رخ می‌دهد که در Object.prototype می‌نویسد، پس هر شیء ویژگی‌های مهاجم را به ارث می‌برد.

پیشرفتهحدود 5 دقیقه مطالعهبه‌روزرسانی 2026-10-30

XSS چگونه از طریق JSON رخ می‌دهد

JSON هرگز خودش اجرا نمی‌شود. XSS در لحظه‌ای رخ می‌دهد که آن را HTML می‌پندارید — الحاق رشته در سرور، innerHTML فرانت‌اند، یا جاسازی مستقیم JSON در تگ اسکریپت.

متوسطحدود 4 دقیقه مطالعهبه‌روزرسانی 2026-10-30

آیا قالب‌بند آنلاین JSON داده‌هایم را آپلود می‌کند

برای فهمیدنش نیازی به خواندن سیاست حریم خصوصی نیست. پنل شبکه را باز کنید، صفحه را آفلاین امتحان کنید، و تازه‌سازی کنید تا ببینید چیزی ماندگار شده است یا نه. دو دقیقه، سه بررسی، بدون نیاز به اعتماد.

مقدماتیحدود 3 دقیقه مطالعهبه‌روزرسانی 2026-10-30

مرورگر چه حجم فایل JSON را می‌تواند پردازش کند

محدودیت ثابتی وجود ندارد؛ قید، بودجه حافظه تب شماست. فایل ۲۰ مگابایتی معمولاً پس از تجزیه ۶۰ تا ۱۰۰ مگابایت می‌شود و DOM هایلایت‌شده می‌تواند دوباره دو برابرش کند.

مقدماتیحدود 3 دقیقه مطالعهبه‌روزرسانی 2026-10-30

پاسخ API باید چه ساختاری داشته باشد

اشیای خالی تا وقتی به فراداده نیاز پیدا نکنید تمیزند؛ پاکت کامل امن اما پرگو است. برای بیشتر پروژه‌ها از وضعیت HTTP برای نتیجه و پاکت پایدار برای داده استفاده کنید.

متوسطحدود 4 دقیقه مطالعهبه‌روزرسانی 2026-10-30

مهرهای زمانی در JSON چه قالبی داشته باشند

عددهای epoch و رشته‌های ISO هر یک مصالحه دارند، اما مخلوط کردنشان همان چیزی است که واقعاً چیزها را می‌شکند. از ISO 8601 با offset استفاده کنید، UTC ذخیره کنید، در منطقه زمانی کاربر نمایش دهید.

مقدماتیحدود 3 دقیقه مطالعهبه‌روزرسانی 2026-10-30

null یا حذف فیلد

`null` می‌گوید فیلد وجود دارد بدون مقدار؛ حذف می‌گوید فیلد وجود ندارد. بدنه‌های PATCH، ادغام پیکربندی و پیش‌پر کردن فرم جاهایی هستند که تفاوت گاز می‌گیرد.

متوسطحدود 3 دقیقه مطالعهبه‌روزرسانی 2026-10-30