Sammenligning af tekst og strukturerede data
En "diff" er en beregning af forskellene mellem to versioner af et dokument eller en datastruktur. Formålet er at identificere præcis, hvilke elementer der er blevet tilføjet, fjernet eller modificeret mellem en oprindelig tilstand og en opdateret tilstand. Dette værktøj udfører denne sammenligning direkte i din browser og understøtter både ustruktureret tekst og strukturerede JSON-data.
Værktøjet opererer med to primære inputfelter:
- Original: Det oprindelige indhold, som fungerer som udgangspunkt for sammenligningen.
- Modificeret: Den ændrede version af indholdet, som skal holdes op mod det originale.
Hvert af de to inputfelter har en teknisk grænse på maksimalt 300.000 tegn. Hvis denne grænse overskrides, vil værktøjet stoppe behandlingen og vise fejlmeddelelsen "Dette input er for stort til dette værktøj. Prøv med en mindre sammenligning".
Tekstsammenligning på linje- og ordniveau
Når værktøjet er indstillet til "Tekst", kan du vælge mellem to detaljegrader for at analysere ændringerne:
- Linjer: Sammenligningen sker linje for linje. Dette er velegnet til kildekode, konfigurationsfiler eller dokumenter med klare linjeskift.
- Ord: Sammenligningen analyserer ændringer helt ned på ordniveau, hvilket er nyttigt til kortere tekster, hvor enkelte ord eller tegnsætning er blevet udskiftet.
Under sammenligningen kategoriseres og markeres ændringerne med specifikke mærkater:
- Tilføjet: Indhold, der kun eksisterer i den modificerede version.
- Fjernet: Indhold, der er slettet fra den originale version.
- Ændret: Elementer, der er blevet modificeret mellem de to versioner.
Hvis du vil teste funktionaliteten, kan du indlæse et indbygget teksteksempel. Det originale eksempel indeholder teksten: "BroBroGo-værktøjer kører i din browser. De er hurtige, private og enkle. Brug dem, når du har brug for et hurtigt tjek."
Det modificerede eksempel indeholder: "BroBroGo-værktøjer kører i din browser. De er hurtige, private og fokuserede. Brug dem, når du har brug for en hurtig sammenligning."
Når eksemplet indlæses, vises beskeden "Eksempel indlæst". Hvis du ønsker at nulstille felterne, kan du bruge ryd-funktionen, som tømmer begge inputfelter og viser beskeden "Begge sider er ryddet". Du kan også bytte om på de to input med funktionen til at bytte om, hvilket udløser beskeden "Venstre og højre side er byttet om".
JSON-sammenligning og semantisk analyse
I "JSON"-tilstand analyserer værktøjet dataene strukturelt i stedet for blot at sammenligne tegnene råt. Dette ændrer måden, ændringer identificeres på:
- Objektnøgler: Objektnøgler sammenlignes efter navn. Det betyder, at hvis rækkefølgen af nøglerne i et JSON-objekt er ændret, men værdierne er de samme, betragtes det ikke som en semantisk ændring. Værktøjet ignorerer dermed ren formateringsrækkefølge for objekter.
- Arrays: Elementer i arrays (lister) sammenlignes efter deres præcise position.
- Sti-angivelse: Ændringer rapporteres med deres specifikke strukturelle stier, hvilket gør det nemt at lokalisere præcis, hvor i JSON-hierarkiet en ændring er sket.
For at JSON-sammenligningen kan køre, skal begge input være gyldig JSON. Hvis syntaksen er forkert, vil værktøjet afbryde og vise en specifik fejlmeddelelse:
- Hvis fejlen ligger i det venstre felt: "Venstre JSON er ugyldig:" efterfulgt af den konkrete parser-fejl.
- Hvis fejlen ligger i det højre felt: "Højre JSON is ugyldig:" efterfulgt af den konkrete parser-fejl.
Hvis JSON-strukturerne er fuldstændig ens i indhold, vises beskeden "Der blev ikke fundet nogen ændringer i JSON-værdierne".
Du kan afprøve JSON-sammenligningen med det indbyggede eksempel. Det originale JSON-eksempel er struktureret således:
{
"name": "BroBroGo",
"plan": "free",
"tools": ["json", "regex", "hash"],
"private": true
}
Det modificerede JSON-eksempel ser således ud:
{
"name": "BroBroGo",
"plan": "free",
"tools": ["json", "regex", "diff"],
"private": true,
"updated": 2026
}
Håndtering af ydeevne og store datamængder
Sammenligningsalgoritmer kan være beregningstunge, især ved store tekstmængder med mange spredte ændringer. For at sikre, at din browser ikke fryser, har værktøjet indbyggede sikkerhedsmekanismer:
- Tidsgrænse (Timeout): Hvis en sammenligning tager mere end 2,5 sekunder, afbrydes processen automatisk. Værktøjet viser i så fald meddelelsen: "Denne sammenligning tager for lang tid. Prøv med mindre input eller linjetilstand".
- Resultatbegrænsning: Hvis datamængden er meget stor, kan værktøjet vælge at afkorte det viste resultat for at holde websiden responsiv. Hvis dette sker, vises advarslen: "Viser et begrænset resultat, så siden forbliver responsiv".
- Generel fejlhåndtering: Hvis en sammenligning af andre årsager fejler under kørslen, vil systemet rapportere: "Kunne ikke sammenligne disse input".
Når en sammenligning gennemføres succesfuldt, opdateres statistikkerne for "Venstre" og "Højre" side, og værktøjet melder "Forskel opdateret". Hvis der overhovedet ikke er forskel på de to input, vises teksten "Der blev ikke fundet nogen forskelle".
Browserbaseret databeskyttelse
Når du arbejder med konfigurationsfiler, API-svar eller tekster, kan dataene indeholde følsomme oplysninger. Dette værktøj er designet med fokus på dataminimering og sikkerhed:
- Lokal kørsel: Al parsing, formatering og sammenligning sker lokalt i din egen browser.
- Intet upload: Der sendes ingen data over netværket til eksterne servere. Din tekst og JSON uploades ikke til BroBroGo.
Dette sikrer, at dine data forbliver på din egen maskine under hele processen.
Ofte stillede spørgsmål (FAQ)
Hvad er forskellen på tekst- og JSON-tilstand?
Teksttilstand sammenligner det rå indhold linje for linje eller ord for ord. JSON-tilstand parser først begge sider, formaterer dem ensartet og viser ændrede stier som f.eks. $.user.email.
Kan værktøjet håndtere meget store datamængder?
Langsomme sammenligninger stopper efter 2,5 sekunder. Meget store utilsigtede indsættelser begrænses, så siden forbliver hurtig og responsiv. Enkeltstående inputfelter er desuden begrænset til maksimalt 300.000 tegn.
Ignorerer JSON-tilstand rækkefølgen af objektnøgler?
Den strukturerede ændringsliste sammenligner objektnøgler efter navn, så rækkefølgen af nøgler alene rapporteres ikke som en semantisk ændring. Arrays sammenlignes efter position.
Hvad sker der med mine data, når jeg sammenligner dem?
Din tekst og JSON sammenlignes direkte i din browser. Intet uploades til BroBroGo, hvilket sikrer, at dine data ikke forlader din computer under kørslen.