Gratis Kodformaterare: Förbättra JavaScript, Python, HTML och mer
Formatera rörig kod direkt med korrekt indrag och mellanrum. Stöder 12+ språk inklusive JavaScript, Python, HTML, CSS och Java. Webbläsarbaserad, säker och gratis. Ingen registrering krävs.
Kodformaterare
Formatera din kod med ett enda klick. Välj ett språk, klistra in din kod och få den korrekt formaterad.
Hur man använder:
- Välj programmeringsspråk från rullgardinsmenyn.
- Klistra in din oformaterade kod i inmatningsområdet.
- Klicka på knappen 'Formatera kod'.
- Kopiera det formaterade resultatet från utdataområdet.
Dokumentation
Vad är en kodformatterare?
En kodformatterare är ett verktyg som skriver om källkod med konsekvent indragning, radbrytningar och blanksteg utan att ändra vad koden gör. Den här kodformatteraren körs i en webbläsare. Den stöder 12 programmeringsspråk, däribland JavaScript, Python, HTML och CSS.
Så fungerar den här kodformatteraren
Verktyget använder en annan uppsättning regler för varje språk. Inget av dem bygger upp ett fullständigt syntaxträd för koden, utom JSON.
- JSON tolkas med webbläsarens inbyggda JSON-tolk och skrivs sedan ut igen med två blanksteg som indrag. Om JSON är ogiltig rapporterar verktyget ett fel och visar inget resultat.
- JavaScript, TypeScript, Java, C, C++ och C# använder samma formatterare. Den går igenom koden tecken för tecken och spårar klammerparenteser, parenteser och semikolon. Varje
{börjar ett nytt indraget block, och varje}eller;avslutar en rad. Kommentarer och citerade strängar kopieras oförändrade. Den här formatteraren lägger inte till blanksteg runt operatorer eller efter kommatecken som saknades i originalkoden – den bygger bara om radbrytningar och indrag. - Python läser den befintliga indragningen på varje rad och bygger om den med fyra blanksteg per nivå enligt samma regler för nästning som Python-språket självt använder. Den delar inte upp långa rader, lägger inte till tomma rader och lägger inte till blanksteg runt operatorer; den normaliserar bara hur djupt varje rad är indragen.
- CSS tar bort extra radbrytningar och blanksteg och lägger sedan till en radbrytning efter varje
{och;samt före varje}. - HTML och XML lägger till en radbrytning och två blanksteg i indrag för varje nivå av nästlade taggar och känner igen vanliga självstängande taggar som
<br>,<img>och<input>. - SQL omvandlar en fast uppsättning nyckelord, till exempel
SELECT,FROM,WHERE,JOINochORDER BY, till versaler och börjar en ny rad före varje större satsdel.
Eftersom endast JSON-vägen faktiskt tolkar indata upptäcker ingen av de andra formatterarna syntaxfel som en saknad parentes eller en oavslutad sträng. De formatterar den text de får, även om den inte skulle kunna köras.
Språk som stöds
| Språk | Vanlig filändelse | Indragsbredd |
|---|---|---|
| JavaScript | .js | 2 blanksteg |
| TypeScript | .ts | 2 blanksteg |
| HTML | .html | 2 blanksteg |
| CSS | .css | 2 blanksteg |
| Python | .py | 4 blanksteg |
| Java | .java | 4 blanksteg |
| C | .c | 4 blanksteg |
| C++ | .cpp | 4 blanksteg |
| C# | .cs | 4 blanksteg |
| SQL | .sql | radbrytningar per satsdel |
| JSON | .json | 2 blanksteg |
| XML | .xml | 2 blanksteg |
Så formatterar du kod
- Välj ett programmeringsspråk i rullgardinsmenyn.
- Klistra in den oformaterade koden i inmatningsfältet.
- Välj ”Formattera kod”.
- Kopiera det formatterade resultatet från utmatningsfältet.
Formatteringen sker helt i webbläsaren. Koden skickas aldrig till en server.
Exempel på JavaScript-formattering
Före formattering:
1function add(a, b) {
2 if (a > 0) { return a + b; }
3 return 0;
4}
5Efter formattering:
1function add(a, b) {
2 if (a > 0) {
3 return a + b;
4 }
5 return 0;
6}
7Formatteraren flyttade koden inom { } till en egen indragen rad och normaliserade indragningen till två blanksteg per nivå. Den lät blankstegen runt a > 0 och a + b vara exakt som de var, eftersom de redan fanns där.
Exempel på Python-formattering
Före formattering:
1def calculate_average(numbers):
2 if len(numbers) == 0:
3 return 0
4 total = sum(numbers)
5 return total / len(numbers)
6Efter formattering:
1def calculate_average(numbers):
2 if len(numbers) == 0:
3 return 0
4 total = sum(numbers)
5 return total / len(numbers)
6Originalkoden använde två blanksteg per indragsnivå. Formatteraren byggde om indragningen på varje rad med fyra blanksteg per nivå, i enlighet med stilen som beskrivs i PEP 8, Pythons officiella stilguide. Den behöll alla rader i samma ordning och ändrade inte blankstegen inne på raderna.
Varför kodformattering är viktigt
Inkonsekvent indragning gör det svårare att se var en funktion, loop eller villkorssats slutar. Kod som har redigerats av flera personer får ofta en blandning av indrag med tabbar och blanksteg, eller rader som inte ligger i linje med blocket de tillhör. När koden körs genom en formatterare får varje fil samma visuella struktur, vilket gör den snabbare att överblicka och gör det lättare att upptäcka en felplacerad parentes.
Begränsningar
- Indatastorlek: Verktyget accepterar upp till 50 000 tecken kod. Längre indata avvisas med ett felmeddelande innan formatteringen börjar.
- Ingen syntaxkontroll för de flesta språk: Endast JSON-indata tolkas och valideras. Kod i de övriga 11 språken formatteras som den är, även om en parentes saknas eller en sträng är oavslutad. Resultatet kan då få felaktig indragning i stället för att markeras som ett fel.
- Inga ändringar av blanksteg runt operatorer: Formatterarna för JavaScript, TypeScript och C-familjen ändrar bara radbrytningar och indragning. De lägger inte in ett blanksteg runt
+,=,!==eller efter ett kommatecken om det inte redan fanns där. - PHP stöds inte: Om ett språk som inte stöds väljs returneras koden oförändrad.
Vanliga frågor
Kontrollerar verktyget min kod med avseende på syntaxfel? Endast för JSON. JSON-indata tolkas, så ogiltig JSON ger ett felmeddelande. Kod i de andra språk som stöds formatteras utan kontroll av om syntaxen är giltig.
Skickar verktyget min kod till en server? Nej. Formatteringen körs helt i webbläsaren med JavaScript. Koden laddas inte upp och lagras inte någonstans.
Hur mycket kod kan verktyget maximalt formattera? 50 000 tecken. Om mer än så klistras in uppstår ett fel innan formatteringen börjar.
Lägger verktyget till saknade blanksteg runt operatorer eller efter kommatecken? Nej, inte för JavaScript, TypeScript, Java, C, C++ och C#. Dessa formatterare bygger bara om indragning och radbrytningar runt klamrar och semikolon; resten av varje rad kopieras som den är skriven.
Vilken indragning använder verktyget? Två blanksteg för JavaScript, TypeScript, HTML, CSS, JSON och XML. Fyra blanksteg för Python, Java, C, C++ och C#.
Varför ser min kod nästan likadan ut efter formatteringen? Om indatan redan använde konsekventa blanksteg och en enhetlig typ av klamrar bygger formatteraren huvudsakligen om indragningen, så förändringen kan vara liten. Den är mest användbar för kod med blandad indragning eller kod som har minifierats till mycket få rader.