দুটি JSON ডকুমেন্ট তুলনা করে প্রতিটি যোগ হওয়া, বাদ পড়া ও বদলানো মান দেখুন
আপনার ব্রাউজারে চলে। আপনি যা লেখেন তা কোথাও পাঠানো হয় না।প্রায় 20 লাইনের পর চোখে দেখে দুটি JSON ডকুমেন্ট তুলনা করা আর চলে না। এই টুল প্রতিটি যোগ হওয়া, বাদ পড়া বা বদলানো মান তার পাথসহ তালিকা করে, ফলে দুটি এনভায়রনমেন্টের কনফিগারেশনের পার্থক্য স্পষ্ট হয়ে যায়। দুটি ডকুমেন্টই আপনার ব্রাউজারে পার্স হয় এবং কোনোটিই কোথাও আপলোড হয় না।
এই পৃষ্ঠাটি ইংরেজি মূল লেখা থেকে যন্ত্রের সাহায্যে অনুবাদ করা হয়েছে। এই অনুবাদটি এখনও কোনো মানুষ পর্যালোচনা করেননি, তাই ইংরেজি সংস্করণটিকেই নির্ভরযোগ্য ধরুন। ইংরেজি মূল লেখাটি পড়ুন
পুরোনো JSON বাম (আগে) ঘরে আর নতুনটি ডান (পরে) ঘরে পেস্ট করুন, অথবা একটি উদাহরণ দেখুন চাপুন।
আইটেম ভিন্ন অবস্থানে থাকতে পারলে অ্যারের ক্রম উপেক্ষা করুন চালু করুন।
পাশাপাশি বা একীভূত বেছে নিন, এবং পাথসহ প্রতিটি যোগ হওয়া, বাদ পড়া ও বদলানো মান পড়ুন।
পার্থক্য কপি করুন চাপুন, অথবা তালিকাটি টেক্সট ফাইল হিসেবে রাখতে রিপোর্ট ডাউনলোড করুন চাপুন।
এই টুল দুটি JSON ডকুমেন্ট টেক্সট ধরে নয়, গঠন ধরে তুলনা করে। প্রতিটি ঘরে একটি করে পেস্ট করুন, আপনি একটি তালিকা পাবেন: যোগ হওয়া মান, বাদ পড়া মান, বদলানো মান, প্রতিটির সঙ্গে সেটি যে পাথে আছে, যেমন $.customer.name বা $.items[2].price। ওপরের একটি গণনা জানায় প্রতিটি ধরনের কতগুলো আছে, আর দুটি ডকুমেন্ট আসলে একই কি না।
JSON-কে টেক্সট হিসেবে তুলনা করা এমন এক কারণে ব্যর্থ হয় যা সবাই দেখেছেন: দুটি ফাইলের অর্থ একই, কিন্তু কী-গুলো ভিন্ন ক্রমে এসেছে, তাই লাইনভিত্তিক তুলনা পুরো ফাইলটিকেই বদলানো বলে দেখায়। এখানে কী-র ক্রম কখনো পার্থক্য নয়, কারণ একটি অবজেক্ট কী-র একটি সেট, আর JSON-এ কোনটি আগে আসবে তা কোথাও বলা নেই। একই কারণে স্পেস ও ইনডেন্টেশন উপেক্ষা করা হয়।
ডিফল্টভাবে অ্যারের ক্রম পার্থক্য, কারণ [1, 2] আর [2, 1] সত্যিই ভিন্ন JSON। যখন ক্রমটি আপনার ডেটাবেস বা API-র নিছক কাকতালীয় ফল, তখন «অ্যারের ক্রম উপেক্ষা করুন» চালু করুন: তখন আইটেমগুলো গভীর সমতা দিয়ে জোড়া মেলানো হয়, আর যেগুলোর জোড়া নেই কেবল সেগুলোই যোগ হওয়া বা বাদ পড়া হিসেবে দেখানো হয়।
সাধারণ ব্যবহার হলো স্টেজিংয়ের রেসপন্স কেন প্রোডাকশন থেকে আলাদা তা খোঁজা, কনফিগ ফাইলে কেউ কোন সেটিং বদলেছে তা খুঁজে বের করা, আর একটি মাইগ্রেশন ঠিক প্রত্যাশিত ডকুমেন্টটিই তৈরি করেছে কি না নিশ্চিত করা। ফলাফলটি প্লেইন টেক্সট হিসেবে কপি ও ডাউনলোড হয়, যা প্যাচের মতো পড়া যায়: প্রতিটি পাথের আগে একটি মাইনাস, প্লাস বা টিলড, টিকিটে পেস্ট করা সহজ। দুটি ডকুমেন্টই আপনার ব্রাউজারে থাকে এবং কখনো আপলোড হয় না।
হ্যাঁ। কোনো সাইন-আপ নেই, ডকুমেন্টের আকারের সীমা নেই, আর কতবার তুলনা করবেন তারও কোনো সীমা নেই। পেজটির খরচ চলে টুলের বাইরে দেখানো কয়েকটি বিজ্ঞাপন দিয়ে, আর আপনার ডকুমেন্ট কখনো সেগুলোর অংশ নয়।
না। দুটি ডকুমেন্টই আপনার ব্রাউজারে পার্স ও তুলনা করা হয়। গ্রাহকের রেকর্ড, টোকেন বা অভ্যন্তরীণ এন্ডপয়েন্টযুক্ত ডেটা কখনো আপনার ডিভাইস ছেড়ে যায় না, আর ট্যাব বন্ধ করলে কিছুই রাখা হয় না।
না। অবজেক্ট কী ধরে তুলনা করা হয়, তাই {"a":1,"b":2} আর {"b":2,"a":1} একই ডকুমেন্ট এবং কোনো পার্থক্য তৈরি করে না। একই কারণে ইনডেন্টেশন ও স্পেস উপেক্ষা করা হয়। সাধারণ টেক্সট তুলনা মূলত এখানেই ভুল করে।
হ্যাঁ, অ্যারের ক্রম উপেক্ষা করুন বিকল্পটি দিয়ে। তখন আইটেমগুলো গভীর সমতা দিয়ে জোড়া মেলানো হয়, আর অন্য পাশে যাদের জোড়া নেই কেবল সেগুলো তালিকায় আসে। ক্রমের অর্থ থাকলে এটি বন্ধ রাখুন, যেমন ধাপের তালিকা বা র্যাঙ্ক করা ফলাফল।
প্রতিটি পাথ জানায় ডকুমেন্টের কোথায় পার্থক্যটি আছে। ডলার চিহ্ন ডকুমেন্টের রুট, একটি বিন্দু একটি অবজেক্ট কী, আর বর্গবন্ধনী হলো অ্যারের ইনডেক্স বা এমন কী যা সাধারণ শব্দ নয়। বেশিরভাগ JSON কোয়েরি টুলে একটি পাথ পেস্ট করা যায়।
হ্যাঁ। রিপোর্টটি প্লেইন টেক্সট হিসেবে কপি বা ডাউনলোড করুন। এটি গণনা দিয়ে শুরু হয়, তারপর প্রতিটি পার্থক্যের জন্য একটি লাইন: বাদ পড়ার জন্য মাইনাস, যোগ হওয়ার জন্য প্লাস আর বদলানো মানের জন্য টিলড, পুরোনো ও নতুন মান পাশাপাশি।
এখনও আটকে আছেন? JSON তুলনা সম্পর্কে প্রশ্ন করুন আর যিনি জানেন তিনিই উত্তর দিতে পারেন। কোনো অ্যাকাউন্ট লাগবে না।