JSON ফরম্যাটার
একটি JSON স্ট্রিং বৈধ কি না তা পরীক্ষা করতে, এটি সুন্দরভাবে সাজানো অবস্থায় দেখতে এবং মৌলিক স্ট্রাকচার মেট্রিক্স পেতে পেস্ট করুন।
এই JSON ফরম্যাটারটি কীভাবে ব্যবহার করবেন
- JSON ইনপুট ফিল্ডে JSON পেস্ট করুন
JSON ইনপুট ফিল্ডে আপনার JSON স্ট্রিংটি পেস্ট করুন বা টাইপ করুন।
- ভ্যালিডেশন পরীক্ষা করুন
স্ট্যাটাস রেজাল্ট নির্দেশ করে যে ইনপুটটি সঠিক JSON কি না অথবা পার্স এরর (parse error) দেখায়।
- ফরম্যাট করা আউটপুটটি দেখুন
সঠিক JSON ফরম্যাট করা আউটপুট সেকশনে ২-স্পেস ইনডেন্টেশন সহ সুন্দরভাবে প্রদর্শিত হয়।
- স্ট্রাকচার মেট্রিক্স পর্যালোচনা করুন
ডকুমেন্টের গঠন বুঝতে 'Total keys' এবং 'Max nesting depth' ব্যবহার করুন।
এই JSON ফরম্যাটার যেভাবে কাজ করে
এই টুলটি ইনপুট যাচাই করতে ব্রাউজারের নেটিভ JSON.parse এবং সুন্দরভাবে আউটপুট দেখানোর জন্য ইনডেন্টেশন সহ JSON.stringify ব্যবহার করে। এটি মোট কী গণনা করতে এবং সর্বোচ্চ নেস্টিং গভীরতা পরিমাপ করতে পার্স করা স্ট্রাকচারটি বিশ্লেষণ করে।
JSON.parse(input) → JSON.stringify(parsed, null, 2) ইনপুট: {"name":"test","value":42} → ২-স্পেস ইনডেন্টেশন, ২ টি কী, ডেপথ ১ সহ ফরম্যাট করা হয়েছে।
ইনপুট {"a":1,"b":[2,3],"c":{"d":4}} → ৪টি কী, ডেপথ ২। নেস্টেড অবজেক্ট c এক লেভেল ডেপথ যোগ করে।
অবৈধ ইনপুট {"key": undefined} ভ্যালিডেশনে ব্যর্থ হয় — JSON-এ undefined নেই; null ব্যবহার করুন অথবা কী-টি বাদ দিন।
- ✓ ইনপুট অবশ্যই সঠিক JSON হতে হবে (JavaScript অবজেক্ট বা শেষে কমা থাকা চলবে না)।
- ✓ বড় ইনপুট ব্রাউজারের পারফরম্যান্সে প্রভাব ফেলতে পারে।
- এই টুলটি সম্পূর্ণভাবে আপনার ব্রাউজারে চলে। কোনো ডেটা সার্ভারে পাঠানো হয় না।
JSON ভ্যালিডেশন বোঝা
JSON (JavaScript Object Notation) হলো JavaScript লিটারেল সিনট্যাক্সের একটি কঠোর সাবসেট। সঠিক JSON-এর জন্য ডাবল-কোট করা কী (key) এবং স্ট্রিং ভ্যালু প্রয়োজন, কোনো ট্রেইলিং কমা, কমেন্ট বা সিঙ্গেল কোট থাকা যাবে না। পার্সার স্ট্রিংটিকে প্রতিটি ক্যারেক্টার অনুযায়ী পড়ে এবং একটি পার্স ট্রি তৈরি করে; যেকোনো সিনট্যাক্স এরর — যেমন কমা বাদ পড়া, আনএসকেপড কোট বা ভুল নম্বর — একটি নির্দিষ্ট এরর মেসেজ এবং পজিশন সহ ভ্যালিডেশন ব্যর্থ করে। সাধারণ ভুলগুলো জানা থাকলে সুবিধা হয়: অ্যারের শেষ এলিমেন্ট বা অবজেক্ট প্রপার্টির পরে ট্রেইলিং কমা অবৈধ, ঠিক যেমন JavaScript-স্টাইল কমেন্ট (// বা /* */) অবৈধ। সংখ্যাবাচক মানের ক্ষেত্রে ০ ছাড়া শুরুতে অন্য কোনো শূন্য থাকা যাবে না এবং স্ট্রিংগুলোতে সঠিক এস্কেপ সিকোয়েন্স ব্যবহার করতে হবে।
ডেভেলপারদের জন্য JSON ফরম্যাটিংয়ের ব্যবহারিক ক্ষেত্রসমূহ
ডেভেলপাররা API রেসপন্স ডিবাগ করার সময়, কনফিগারেশন ফাইল পরীক্ষা করার সময় এবং ডকুমেন্টেশনের জন্য ডেটা প্রস্তুত করার সময় JSON ফরম্যাটার ব্যবহার করেন। প্রোডাকশন API থেকে পাওয়া মিনিফাইড JSON পড়া কঠিন; প্রিটি-প্রিন্টিং এর গঠন প্রকাশ করে এবং ভুল বা অপ্রত্যাশিত ফিল্ডগুলো খুঁজে পাওয়া সহজ করে তোলে। স্ট্রাকচার মেট্রিক্স যেমন কী (key) সংখ্যা এবং নেস্টিং ডেপথ জটিলতা মূল্যায়ন করতে এবং অতিরিক্ত নেস্টেড পেলোড শনাক্ত করতে সাহায্য করে যা পারফরম্যান্স সমস্যা তৈরি করতে পারে। টেস্ট বা ফিক্সচার লেখার সময়, ফরম্যাট করা JSON ভার্সন কন্ট্রোলে তুলনা (diff) এবং রিভিউ করা সহজ। ভ্যালিডেটর রিকোয়েস্ট পাঠানোর বা কনফিগ ফাইল কমিট করার আগে দ্রুত সিনট্যাক্স ত্রুটি ধরে ফেলে, যা ডিবাগিং লুপে সময় বাঁচায়।
সচরাচর জিজ্ঞাসিত প্রশ্ন
এটি কি JSON5 বা JSONC সাপোর্ট করে?
না। শুধুমাত্র স্ট্যান্ডার্ড JSON (RFC 8259) সমর্থিত। কমেন্ট এবং শেষে কমা থাকলে ভ্যালিডেশন এরর দেখা দেবে।
কোনো সাইজ লিমিট আছে কি?
কোনো নির্দিষ্ট সীমা নেই, তবে খুব বড় JSON স্ট্রিং ব্রাউজারকে ধীর করে দিতে পারে।