مبدل رایگان

JSON Formatter & اعتباربخش

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

یک فایل JSON را در اینجا بکشید و رها کنید

پشتیبانی از فایل های json. یا JSON خود را در قسمت بالا قرار دهید.

یا

درباره این ابزار

قالب‌بندی JSON (که اغلب به آن چاپ زیبا یا زیباسازی می‌گویند) JSON فشرده می‌گیرد و فضای خالی را اضافه می‌کند - شکستگی خط، تورفتگی، فاصله ثابت - تا ساختار برای خوانندگان انسانی قابل مشاهده باشد. فشرده JSON فرمت مناسب برای انتقال است: بایت ها را روی سیم و ذخیره سازی به حداقل می رساند. فرمت JSON فرمت مناسب برای بازرسی است: سلسله مراتب تورفتگی ساختار تودرتو را در یک نگاه نشان می دهد، تفاوت ها را معنادار می کند و به توسعه دهندگان اجازه می دهد فیلدهای خاص را بدون تجزیه ذهنی سند پیدا کنند.

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

فرمت‌کننده همچنین کوچک‌سازی (عملیات معکوس) را ارائه می‌کند که تمام فضای خالی غیرضروری را برای تولید کوچک‌ترین JSON معتبر حذف می‌کند. خروجی حداقل برای انتقال تولید مفید است. خروجی فرمت شده برای توسعه و اشکال زدایی مفید است.

چرا JSON را فرمت کنید

خواندن JSON عمیق تو در تو بدون تورفتگی اساساً غیرممکن است - ساختار از نظر فنی وجود دارد اما نامرئی است. حتی JSON نسبتاً پیچیده نیز از قالب‌بندی سود زیادی می‌برد. بازبینی‌کننده‌های کد، اشکال‌زدای API، و هرکسی که تلاش می‌کند یک محموله داده را بفهمد، به JSON فرمت‌شده نیاز دارند تا ببینند واقعاً چه چیزی وجود دارد.

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

نحوه استفاده

JSON را جای‌گذاری کنید، روی قالب کلیک کنید.

  1. JSON خود را جایگذاری کنید: JSON خام یا فشرده را در قسمت ورودی بچسبانید. کشیدن و رها کردن فایل‌های json. نیز کار می‌کند.
  2. تورفتگی را انتخاب کنید: پیش فرض 2 فاصله است. از 4 فضا برای پروژه هایی که از این قرارداد پیروی می کنند استفاده کنید، یا اگر ابزار پایین دستی شما به آنها نیاز دارد، از برگه ها استفاده کنید.
  3. قالب: ورودی از طریق JSON.parse برای تأیید اعتبار تجزیه و تحلیل می شود، سپس با JSON.stringify و تورفتگی انتخاب شده سریال می شود. خطاها در ورودی یک پیام خطای تجزیه را ایجاد می کنند که محل مشکل را شناسایی می کند.
  4. کپی یا دانلود کنید: JSON فرمت شده را در کلیپ بورد کپی کنید یا به عنوان json. ذخیره کنید. خروجی از نظر ساختاری با ورودی یکسان است اما با فضای خالی ثابت.

موارد استفاده رایج

جزئیات فنی

فرمت‌کننده از JSON.parse و JSON.stringify استفاده می‌کند، همان جفت‌هایی که در هر زمان اجرا جاوا اسکریپت ارسال می‌شود. تجزیه از RFC 8259 (مشخصات JSON فعلی) پیروی می کند، JSON سختگیرانه را می پذیرد، اما لفظ های شی جاوا اسکریپت، نظرات، کاماهای انتهایی و دیگر برنامه های افزودنی JSON5 را رد می کند.

JSON.stringify یک آرگومان تورفتگی را می پذیرد: یک عدد (فضاها) یا رشته (نویسه تورفتگی سفارشی، مانند یک برگه). فرمت کننده هر دو گزینه را نشان می دهد. خروجی به ترتیب منبع برای اشیا مرتب می شود (از آنجایی که ES2015 ترتیب درج ویژگی را در همه موتورهای اصلی حفظ کرده است).

موارد لبه: اعداد بزرگ فراتر از Number.MAX_SAFE_INTEGER هنگام تجزیه دقت خود را از دست می دهند (محدودیت شناخته شده JSON؛ از مقادیر رشته برای شناسه هایی که بیش از 2^53 است استفاده کنید). فرارهای یونیکد در رشته ها به معنای واقعی کلمه حفظ می شوند. فضای خالی انتهایی از هر خط حذف می شود.

بهترین شیوه ها

سوالات متداول

این ابزار چه نوع خطاهای JSON را شناسایی می کند؟
این ابزار طبق مشخصات RFC 8259 JSON، کاماهای گمشده، براکت ها/پرانتزهای بی همتا، فرار رشته نامعتبر، کاماهای دنباله دار، رشته های تک نقل قولی و سایر موارد نقض نحو را تشخیص می دهد.
آیا می تواند فایل های JSON بسیار بزرگ را مدیریت کند؟
بله. فرمت‌کننده JSON را در مرورگر شما با استفاده از تجزیه بومی جاوا اسکریپت پردازش می‌کند، بنابراین فایل‌های تا چندین مگابایت را به طور موثر مدیریت می‌کند. برای فایل های بسیار بزرگ (50 مگابایت و بالاتر)، زمان پردازش به دستگاه شما بستگی دارد.
آیا از JSON با نظرات (JSONC) پشتیبانی می کند؟
JSON استاندارد اجازه کامنت نمی دهد. اگر ورودی شما حاوی نظرات باشد، اعتبارسنجی آنها را به عنوان خطا علامت گذاری می کند. برای پشتیبانی از JSONC، نظرات را قبل از قالب بندی حذف کنید.
آیا قالب بندی مقادیر داده های من را تغییر می دهد؟
نه. قالب‌بندی فقط فضای خالی و تورفتگی را تنظیم می‌کند - انواع داده‌ها، مقادیر و ساختار شما دقیقاً یکسان می‌مانند.
آیا ویژگی‌های JSON5 (نظرات، کاماهای انتهایی) پشتیبانی می‌شوند؟
خیر. فرمت کننده کاملاً از RFC 8259 پیروی می کند. ویژگی های JSON5 باعث خطاهای تجزیه می شود. برای کار با JSON5، ابتدا با استفاده از تجزیه کننده JSON5 به JSON استاندارد تبدیل کنید.
آیا JSON من روی سرور آپلود می شود؟
نه. تجزیه و قالب‌بندی کاملاً در مرورگر شما با استفاده از توابع JSON داخلی انجام می‌شود.
آیا اعداد بزرگ دقت خود را از دست خواهند داد؟
جاوا اسکریپت اعداد را به صورت شناورهای 64 بیتی نشان می دهد، بنابراین اعداد صحیح بالای 2^53 (حدود 9 کوادریلیون) دقت خود را از دست می دهند. برای شناسه ها یا سایر مقادیر صحیح بزرگ، آنها را به عنوان رشته در JSON ذخیره کنید.
آیا می توانم کلیدها را بر اساس حروف الفبا مرتب کنم؟
JSON.stringify کلیدها را مرتب نمی کند. از یک مرحله مرتب‌سازی جداگانه (یا قالب‌کننده با پشتیبانی مرتب‌سازی) برای حروف الفبا کردن کلیدها قبل از رشته‌بندی استفاده کنید.