JSON ফরম্যাটার

বুদ্ধিমান ইন্ডেন্টেশন এবং সিনট্যাক্স হাইলাইটিং সহ JSON ডেটা ফরম্যাট, যাচাই এবং সৌন্দর্যবর্ধন করুন

স্থানীয়ভাবে চলে

JSON ইনপুট

ফরম্যাট করা আউটপুট

0 বাইট

ইনস্পেক্টর

বৈধ JSON পেস্ট করুন — স্ট্রাকচার, ট্রি এবং কী পাথ এখানে স্বয়ংক্রিয়ভাবে দেখা যাবে

উন্নত বিকল্প

অন্য একটি JSON-এর সাথে তুলনা করুন

এই JSON-টি Data Diff-এ পাঠান এবং দ্বিতীয় একটি ভার্সন পেস্ট করে দেখুন কী পরিবর্তন হয়েছে।

কাজে লাগানোর মতো ভ্যালিডেশন ফলাফল

প্রতিটি কিস্ট্রোকে ভ্যালিডেশন চলে। JSON বৈধ হলে আপনি অবজেক্ট, অ্যারে, কী এবং ডেপথের লাইভ গণনা দেখতে পান। বৈধ না হলে এররটি রিপোর্ট করা হয় এর সঠিক লাইন ও কলাম, সম্ভাব্য কারণ এবং এডিটরে ব্যর্থ অবস্থানে হাইলাইট সহ — শুধু "Invalid JSON" নয়।

এই টুল যেসব সাধারণ JSON এরর সঠিকভাবে শনাক্ত করে

এই চারটি ভুলের কারণেই বেশিরভাগ অবৈধ JSON হয়। প্রতিটিই একটি অবস্থান ও সম্ভাব্য কারণ সহ শনাক্ত করা হয়:

ট্রেইলিং কমা

ক্লোজিং } বা ] চিহ্নের আগে থাকা কমা। পরের লাইনে "unexpected token" হিসেবে রিপোর্ট হয় — কারণের বার্তা কমার দিকেই ইঙ্গিত করে।

অনুপস্থিত বা অমিল কোট

অসমাপ্ত স্ট্রিং ডকুমেন্টের বাকি অংশ গিলে ফেলে। পার্সার আসল ভুল থেকে অনেক দূরে একটি unexpected token রিপোর্ট করে; লাইন/কলাম হাইলাইট দেখায় কোথায় খুঁজতে হবে।

অপ্রত্যাশিত টোকেন

ডাবল কোটের বদলে সিঙ্গেল কোট, কমেন্ট বা কোট ছাড়া কী। স্ট্যান্ডার্ড JSON (RFC 8259) সব স্ট্রিং ও কী-এর জন্য ডাবল কোট বাধ্যতামূলক করে।

অবৈধ এস্কেপ সিকোয়েন্স

শুধুমাত্র \" \ \/ \b \f \n \r \t এবং \uXXXX বৈধ এস্কেপ। একা থাকা একটি ব্যাকস্ল্যাশ অবৈধ সিকোয়েন্সের ঠিক অবস্থানে এরর তৈরি করে।

আগে / পরে

বাম দিকে মিনিফাইড API রেসপন্স, ডান দিকে 2-স্পেস ইনডেন্ট দিয়ে ফরম্যাট করা একই ডেটা। পার্স করা ডকুমেন্ট থেকে স্ট্রাকচার, ট্রি এবং পাথ আপডেট হয়।

Before
{"user":{"id":123,"name":"Chen","roles":["admin","editor"],"active":true}}
After
{
  "user": {
    "id": 123,
    "name": "Chen",
    "roles": [
      "admin",
      "editor"
    ],
    "active": true
  }
}

JSON স্ট্যান্ডার্ড কুইক রেফারেন্স (RFC 8259)

  • দুটি স্ট্রাকচার: একটি অবজেক্ট (অবিন্যস্ত name/value জোড়া, {}) এবং একটি অ্যারে (ক্রমবিন্যস্ত মান, [])।
  • একটি ভ্যালু হতে পারে ডাবল কোটেশনে ঘেরা স্ট্রিং, সংখ্যা, true, false, null, অবজেক্ট বা অ্যারে।
  • সংখ্যার শুরুতে কখনোই শূন্য (leading zero) থাকে না; 1E10 এবং 0.5e-2 ইক্সপোনেনশিয়াল ফর্ম অনুমোদিত।
  • স্ট্রিংয়ে লিটারাল কন্ট্রোল ক্যারেক্টার থাকতে পারে না — সেগুলো অবশ্যই এস্কেপ করতে হবে (\n, \t, \uXXXX)।
  • কোনো কমেন্ট নেই, কোনো ট্রেইলিং কমা নেই, কোনো সিঙ্গেল কোট নেই — এই কঠোর গ্রামারই JSON-কে পোর্টেবল করে তোলে।

এই ডেটা নিয়ে পরবর্তী ধাপগুলো

ফরম্যাটিং হলো প্রথম ধাপ। ব্রাউজার ছেড়ে না গিয়েই ওয়ার্কফ্লো চালিয়ে যান:

সাধারণ জিজ্ঞাসা

Json Formatter ফরম্যাটিং সম্পর্কে সাধারণ প্রশ্নের উত্তর

হ্যাঁ, আমাদের JSON ফরম্যাটার সম্পূর্ণ ফ্রি এবং কোনো রেজিস্ট্রেশনের প্রয়োজন নেই। সমস্ত প্রসেসিং আপনার ব্রাউজারেই সম্পন্ন হয়।

সহজভাবে আপনার JSON ডেটা এডিটরে পেস্ট করে Validate-এ ক্লিক করুন। টুলটি তাৎক্ষণিকভাবে সিনট্যাক্স পরীক্ষা করবে, লাইন নম্বরসহ এরর রিপোর্ট করবে এবং অবজেক্ট/অ্যারে/প্রপার্টির সংখ্যা দেখাবে।

JSON মিনিফিকেশন ফাইল সাইজ কমাতে সব অপ্রয়োজনীয় হোয়াইটস্পেস সরিয়ে দেয়। ব্যান্ডউইথ বাঁচাতে এবং লোড টাইম উন্নত করতে প্রোডাকশনে JSON ডিপ্লয় করার আগে এটি ব্যবহার করুন।

হ্যাঁ, ফরম্যাটারটি অপটিমাইজড পার্সিং অ্যালগরিদম দিয়ে 10MB পর্যন্ত ফাইল সাপোর্ট করে। বড় API রেসপন্স, ডেটাবেস এক্সপোর্ট এবং কনফিগারেশন ফাইল দক্ষভাবে হ্যান্ডেল করা হয়।

ফরম্যাটারটি কঠোরভাবে RFC 8259 JSON স্পেসিফিকেশন অনুসরণ করে। ট্রেইলিং কমা বা কমেন্টসহ JSON-এর ক্ষেত্রে ভ্যালিডেশন সেগুলোকে এরর হিসেবে রিপোর্ট করবে, কারণ সেগুলো বৈধ স্ট্যান্ডার্ড JSON নয়।

\u00e9-এর মতো এস্কেপ ডিসপ্লের জন্য ডিকোড করা হয়, আর non-ASCII টেক্সট পুনরায় এস্কেপ করার পরিবর্তে হুবহু সংরক্ষিত থাকে। সংখ্যা ও স্ট্রিংয়ের মিশ্র অ্যারে সর্ট করা স্টেবল সর্ট সিমেনটিক্স অনুসরণ করে (সমান কি তাদের মূল ক্রম ধরে রাখে), যা আধুনিক ইঞ্জিনগুলো ECMA-262 অনুযায়ী Array.prototype.sort যেভাবে বাস্তবায়ন করে তার সাথে মেলে।

হ্যাঁ। অপশন প্যানেলে কি সর্টিং চালু করুন যাতে প্রতিটি নেস্টিং লেভেলে অবজেক্ট প্রপার্টি বর্ণানুক্রমিকভাবে পুনর্বিন্যস্ত হয়। সর্টিং কনফিগারেশন ফাইল ও API ফিক্সচার ভার্সন কন্ট্রোলে diff করা সহজ করে তোলে, কারণ অসম্পর্কিত ইনসার্শন আর ফাইলজুড়ে পরিবর্তন ছড়িয়ে দেয় না।

JSON নিজে কোনো ইন্টিজার সাইজ লিমিট রাখে না, কিন্তু JavaScript-এর Number টাইপ মাত্র 53 বিটের নিরাপদ ইন্টিজার সংরক্ষণ করতে পারে। 9,007,199,254,740,991 (2^53 - 1)-এর বেশি মান বা হাই-প্রিসিশন দশমিক সংখ্যা রাউন্ড হয়ে যায়। এটি ECMA-262-তে ডকুমেন্ট করা JavaScript ইঞ্জিনের একটি সীমাবদ্ধতা, ফরম্যাটারের বাগ নয় - API ডিজাইনে এই ধরনের মান স্ট্রিং হিসেবে ব্যবহার করুন।

{-- * External Resources Component(#19 Phase 3b 内容佐证工程) * 工具页「权威引用」区块:RFC / W3C / WHATWG / ECMA / IANA / 官方规范站 / 官方语言文档 / Wikipedia。 * * - 接受 :slug 属性 → 经 config/tool-sources.php 家族矩阵渲染该工具的权威引用 * - slug 未命中映射时不渲染(无权威来源的工具静默跳过) * - 链接 title 保持英文(引用源专名);description 经 * common.resources.descriptions.{key} 本地化,lang 未命中回退英文(线上不裸奔) * - 链接保持 dofollow(rel="noopener noreferrer") * * @param string|null $slug --}}

সম্পর্কিত টুলসমূহ