JSON ফরম্যাটার
একটি JSON স্ট্রিং বৈধ কি না তা পরীক্ষা করতে, এটি সুন্দরভাবে সাজানো অবস্থায় দেখতে এবং মৌলিক স্ট্রাকচার মেট্রিক্স পেতে পেস্ট করুন।
এই JSON ফরম্যাটারটি কীভাবে ব্যবহার করবেন
- 1 JSON ইনপুট ফিল্ডে JSON পেস্ট করুন
JSON ইনপুট ফিল্ডে আপনার JSON স্ট্রিংটি পেস্ট করুন বা টাইপ করুন।
- 2 ভ্যালিডেশন পরীক্ষা করুন
স্ট্যাটাস রেজাল্ট নির্দেশ করে যে ইনপুটটি সঠিক JSON কি না অথবা পার্স এরর (parse error) দেখায়।
- 3 ফরম্যাট করা আউটপুটটি দেখুন
সঠিক JSON ফরম্যাট করা আউটপুট সেকশনে ২-স্পেস ইনডেন্টেশন সহ সুন্দরভাবে প্রদর্শিত হয়।
- 4 স্ট্রাকচার মেট্রিক্স পর্যালোচনা করুন
ডকুমেন্টের গঠন বুঝতে '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 অবজেক্ট বা শেষে কমা থাকা চলবে না)।
- ✓ বড় ইনপুট ব্রাউজারের পারফরম্যান্সে প্রভাব ফেলতে পারে।
- এই টুলটি সম্পূর্ণভাবে আপনার ব্রাউজারে চলে। কোনো ডেটা সার্ভারে পাঠানো হয় না।
- RFC 8259 — দ্য জাভাস্ক্রিপ্ট অবজেক্ট নোটেশন (JSON) ডেটা ইন্টারচেঞ্জ ফরম্যাট — JSON সিনট্যাক্স এবং ডেটা মডেল
- MDN — JSON.parse() — ব্রাউজার JSON পার্সিং আচরণ
JSON ভ্যালিডেশন বোঝা
JSON (JavaScript Object Notation) জাভাস্ক্রিপ্ট অবজেক্ট লিটারেল সিনট্যাক্স থেকে উদ্ভূত, তবে এটি একটি আলাদা এবং কঠোর ডেটা ফরম্যাট। বৈধ JSON-এর জন্য ডাবল-কোটযুক্ত কী এবং স্ট্রিং মান প্রয়োজন, কোনো ট্রেইলিং কমা, কমেন্ট বা সিঙ্গেল কোট থাকা যাবে না। পার্সার স্ট্রিংটিকে প্রতিটি অক্ষর ধরে পড়ে এবং একটি পার্স ট্রি তৈরি করে; যেকোনো সিনট্যাক্স ত্রুটি — যেমন কমা বাদ পড়া, আনএসকেপড কোট বা অবৈধ সংখ্যা — একটি নির্দিষ্ট ত্রুটি বার্তা এবং অবস্থানসহ যাচাইকরণে ব্যর্থ হয়। সাধারণ ভুলগুলো জানা থাকলে সুবিধা হয়: শেষ অ্যারে এলিমেন্ট বা অবজেক্ট প্রপার্টির পরে ট্রেইলিং কমা অবৈধ, ঠিক যেমন জাভাস্ক্রিপ্ট-স্টাইল কমেন্ট (// বা /* */) অবৈধ। সংখ্যাবাচক মানের ক্ষেত্রে ০ ছাড়া শুরুতে অন্য কোনো শূন্য থাকা যাবে না এবং স্ট্রিংগুলোতে অবশ্যই বৈধ এস্কেপ সিকোয়েন্স ব্যবহার করতে হবে।
ডেভেলপারদের জন্য JSON ফরম্যাটিংয়ের ব্যবহারিক ক্ষেত্রসমূহ
ডেভেলপাররা API রেসপন্স ডিবাগ করার সময়, কনফিগারেশন ফাইল পরীক্ষা করার সময় এবং ডকুমেন্টেশনের জন্য ডেটা প্রস্তুত করার সময় JSON ফরম্যাটার ব্যবহার করেন। প্রোডাকশন API থেকে পাওয়া মিনিফাইড JSON পড়া কঠিন; প্রিটি-প্রিন্টিং এর গঠন প্রকাশ করে এবং ভুল বা অপ্রত্যাশিত ফিল্ডগুলো খুঁজে পাওয়া সহজ করে তোলে। স্ট্রাকচার মেট্রিক্স যেমন কী (key) সংখ্যা এবং নেস্টিং ডেপথ জটিলতা মূল্যায়ন করতে এবং অতিরিক্ত নেস্টেড পেলোড শনাক্ত করতে সাহায্য করে যা পারফরম্যান্স সমস্যা তৈরি করতে পারে। টেস্ট বা ফিক্সচার লেখার সময়, ফরম্যাট করা JSON ভার্সন কন্ট্রোলে তুলনা (diff) এবং রিভিউ করা সহজ। ভ্যালিডেটর রিকোয়েস্ট পাঠানোর বা কনফিগ ফাইল কমিট করার আগে দ্রুত সিনট্যাক্স ত্রুটি ধরে ফেলে, যা ডিবাগিং লুপে সময় বাঁচায়।
সচরাচর জিজ্ঞাসিত প্রশ্ন
এটি কি JSON5 বা JSONC সাপোর্ট করে? +
না। শুধুমাত্র স্ট্যান্ডার্ড JSON (RFC 8259) সমর্থিত। কমেন্ট এবং শেষে কমা থাকলে ভ্যালিডেশন এরর দেখা দেবে।
কোনো সাইজ লিমিট আছে কি? +
কোনো নির্দিষ্ট সীমা নেই, তবে খুব বড় JSON স্ট্রিং ব্রাউজারকে ধীর করে দিতে পারে।
এটি একটি অনুমান হিসেবে ব্যবহার করুন এবং গুরুত্বপূর্ণ সিদ্ধান্তগুলো একজন যোগ্য পেশাদারের মাধ্যমে যাচাই করে নিন।
ভবিষ্যতে কোনো ফিচার স্পষ্টভাবে না জানানো পর্যন্ত ইনপুটগুলো ব্রাউজারেই থাকে।
সম্পর্কিত ক্যালকুলেটর
ফলাফল এবং অনুমানগুলো তুলনা করতে সংশ্লিষ্ট ক্যালকুলেটরগুলো দেখুন।
রঙ রূপান্তরকারী
তাৎক্ষণিকভাবে HEX, RGB এবং HSL ফরম্যাটের মধ্যে রঙ রূপান্তর করুন।
বেস কনভার্সন ক্যালকুলেটর
একটি পূর্ণসংখ্যাকে বাইনারি, অক্টাল, ডেসিমাল এবং হেক্সাডেসিমালে রূপান্তর করুন।
UUID জেনারেটর
তাৎক্ষণিকভাবে র্যান্ডম UUID v4 আইডেন্টিফায়ার তৈরি করুন।