JSON atšķirību pārbaudītājs
Salīdziniet divas JSON slodzes pēc struktūras, nevis pēc teksta: skatiet katru pievienoto, noņemto un mainīto atslēgu savā ceļā, pilnībā pārlūkprogrammā.
Rezultāts
Divu JSON dokumentu ielīmēšana parastā teksta atšķirības rīkā gandrīz vienmēr rada nepareizu attēlu: pārformatējot, atkārtoti ievietojot atkāpi vai vienkārši serializējot objektu atslēgas citā secībā, tiks izgaismotas milzīgas “mainīta” teksta daļas pat tad, ja pamatā esošie dati ir identiski. Teksta atšķirība salīdzina rakstzīmes un līnijas; tai nav ne jausmas, ka {"a":1,"b":2} un {"b":2"a":1} nozīmē tieši to pašu.
Šis rīks vispirms parsē abas ievades kā JSON, pēc tam rekursīvi izvada abas struktūras tā, kā dati ir faktiski veidoti: objekti tiek salīdzināti pēc atslēgas nosaukuma, bet masīvi pēc pozīcijas (uz indeksu balstīta masīvu salīdzināšana šeit ir apzināta, vienkāršāka noklusējuma metode — nav režīma “uztvert šo masīvu kā nesakārtotu kopu, kas atslēgta ar ID lauku”). Par katru atšķirību tiek ziņots savā ceļā, piemēram, lietotājs.adrese.pilsēta, un tā tiek klasificēta kā pievienota, noņemta vai mainīta, un vecā un jaunā vērtība tiek rādīta kopā, lai jums nekad nebūtu jāuzmin, kas ir mainījies.
Nemainītie ceļi pēc noklusējuma ir paslēpti, tāpēc liela slodze ar vienu nelielu izmaiņu neapglabā to trokšņos, ar slēdzi, lai tos atkal atklātu, kad vēlaties pilnu attēlu. Opcija “Kārtošanas atslēgas pirms salīdzināšanas” pārvieto un uzskaita objektu atslēgas kanoniskā alfabētiskā secībā — JSON objektam sākumā nav jēgpilnas atslēgu secības, tāpēc divi objekti ar vienādām atslēgām un vērtībām atšķirīgā secībā ir vieni un tie paši dati, un šī opcija padara šo salīdzinājumu un iegūto sarakstu skaidru un deterministisku. Tas ir precīzs iestatījums aiz šī rīka sakārtotajiem un API atbildes salīdzināšanas sākotnējiem iestatījumiem.
Ja vienkāršam tekstam, kodam vai citam saturam, kas nav JSON, ir nepieciešama klasiska blakusrindas diferenciācija, tā vietā izmantojiet palīgrīku Text Diff — tas salīdzina rindiņu pa rindiņai un ir īstais rīks, kad atstarpes un formatējuma atšķirības patiešām ir svarīgas. Šis ir īpaši paredzēts JSON, un, tāpat kā katrs rīks šajā vietnē, tas pilnībā darbojas jūsu pārlūkprogrammā: nekas, ko jūs ielīmējat, nekad nekur netiek augšupielādēts.