DevToys Web Pro iconDevToys Web Proব্লগ
আমাদের রেট দিন:
ব্রাউজার এক্সটেনশন ব্যবহার করে দেখুন:

JSON ডিফ ভিউয়ার

একই
  • বাম JSON

  • ডান JSON

  • ডিফ আউটপুট

    কোনো পার্থক্য নেই — দুটি JSON ডকুমেন্ট একই।
    প্রযুক্তিগত বিবরণ

    JSON Diff টুল কীভাবে কাজ করে

    টুলটি কী করে

    JSON Diff টুল দুটি JSON ডকুমেন্টের ডিপ স্ট্রাকচারাল তুলনা করে, প্রতিটি নেস্টিং লেভেলে যোগ হওয়া, অপসারিত, এবং পরিবর্তিত কী শনাক্ত করে। ফলাফল রঙ-ভিত্তিক হাইলাইটিংসহ দেখানো হয়, যাতে ঠিক কী বদলেছে তা স্পষ্ট বোঝা যায়—নেস্টেড অবজেক্ট ও অ্যারে ডিফারেন্সসহ। এটি এমন একটি সেমান্টিক ডিফ দেয় যা কাঁচা টেক্সট লাইন তুলনা না করে JSON স্ট্রাকচার বোঝে।

    ডেভেলপারদের সাধারণ ব্যবহারক্ষেত্র

    ডেভেলপাররা JSON diff ব্যবহার করেন কোড পরিবর্তনের আগে ও পরে API রেসপন্স তুলনা করতে, কনফিগারেশন ফাইল আপডেটে শুধু উদ্দেশ্যকৃত পরিবর্তন আছে কি না যাচাই করতে, এবং এনভায়রনমেন্ট-স্পেসিফিক সেটিংসের (staging বনাম production) পার্থক্য ডিবাগ করতে। এটি Terraform plan আউটপুট রিভিউ, OpenAPI স্কিমা ভার্সন তুলনা, এবং ডাটাবেস মাইগ্রেশন স্ক্রিপ্ট JSON এক্সপোর্টে প্রত্যাশিত স্কিমা পরিবর্তন তৈরি করছে কি না ভ্যালিডেট করার জন্য অপরিহার্য।

    ডেটা ফরম্যাট, টাইপ বা ভ্যারিয়েন্ট

    টুলটি স্ট্রাকচারাল তুলনা করে যেখানে অবজেক্ট কী-এর অর্ডার সমতা নির্ধারণে প্রভাব ফেলে না (কারণ স্পেসিফিকেশন অনুযায়ী JSON অবজেক্ট আনঅর্ডার্ড), কিন্তু অ্যারে এলিমেন্টের অর্ডার গুরুত্বপূর্ণ। টাইপ পরিবর্তন (স্ট্রিং '1' বনাম নাম্বার 1) মডিফিকেশন হিসেবে রিপোর্ট হয়। null ভ্যালু এবং অনুপস্থিত কী আলাদা করে ধরা হয়। গভীরভাবে নেস্টেড পার্থক্যগুলো তাদের পূর্ণ JSON path সহ রিপোর্ট হয়, যাতে জটিল ডকুমেন্টে প্রতিটি লেভেল হাতে করে এক্সপ্যান্ড না করেও আপনি পরিবর্তনগুলো খুঁজে পান।

    সাধারণ ভুল ও এজ কেস

    অ্যারে ডিফ অনেক সময় নয়েজি হতে পারে যখন মাঝখানে এলিমেন্ট ইনসার্ট বা রিমুভ করা হয়, ফলে পরবর্তী সব ইনডেক্স বদলেছে বলে দেখায়। ফ্লোটিং-পয়েন্ট নাম্বার সিরিয়ালাইজেশন প্রিসিশনের কারণে (1.0 বনাম 1.00000000001) ভিন্ন হতে পারে, যদিও তা অর্থবহ পরিবর্তন নাও হতে পারে। এক লেভেলে হাজার হাজার কীসহ খুব বড় JSON ডকুমেন্ট অতিরিক্ত ডিফ আউটপুট তৈরি করতে পারে — আলাদা করে সাবসেকশন তুলনা করার কথা ভাবুন। কমেন্ট বৈধ JSON নয়, তাই কমেন্টেড কনফিগ ফাইল তুলনার আগে কমেন্ট সরাতে হবে।

    কোডের বদলে কখন এই টুল ব্যবহার করবেন

    ডিবাগিং বা কোড রিভিউয়ের সময় দুটি JSON পে-লোড দ্রুত ভিজ্যুয়ালভাবে তুলনা করতে এই ব্রাউজার টুল ব্যবহার করুন। অটোমেটেড রিগ্রেশন টেস্টিং, CI পাইপলাইন, বা প্রোগ্রাম্যাটিক ডিফ জেনারেশনের জন্য json-diff (npm), deepdiff (Python), বা jq-ভিত্তিক তুলনার মতো লাইব্রেরি ব্যবহার করুন, যেগুলো টেস্ট স্যুটে ইন্টিগ্রেট করা যায় এবং মেশিন-রিডেবল প্যাচ আউটপুট (RFC 6902 JSON Patch ফরম্যাট) তৈরি করতে পারে।