§

Options

Beautify options
§

Lipește JavaScript

§

JS frumusețit

js

Dezvoltatorii din SUA și Marea Britanie apelează la un beautifier când dau peste un script împachetat în producție și trebuie să îl citească. Deschide panoul Sources din Chrome DevTools, lipește aici un fișier vendor minificat și primești înapoi ceva pe care o revizuire de cod îl poate urmări. Echipele care adoptă Prettier sau ghidul de stil Airbnb JavaScript folosesc aceleași reguli de indentare pe care acest instrument le expune, astfel încât ieșirea se integrează direct într-un depozit verificat de ESLint. Ajută și la auditarea unui widget terță parte pentru o revizuire SOC 2 sau când un exercițiu de cartografiere GDPR înseamnă să urmărești exact ce face un fragment de analitică înainte de a fi livrat.

Cum funcționează frumusețirea JavaScript

Beautifierul citește codul tău caracter cu caracter, urmărește cât de adânc este imbricată fiecare declarație și îl re-emite cu spațiere consistentă. Nu schimbă niciodată ceea ce face codul — doar cum arată.

  1. Tokenizare. Biblioteca scanează intrarea într-un flux de tokenuri: cuvinte cheie, identificatori, șiruri, operatori și punctuație. Șirurile, template literals și expresiile regex sunt recunoscute ca unități unice, astfel încât o acoladă în interiorul unui șir nu este niciodată confundată cu un delimitator de bloc.
  2. Urmărire imbricare. Pe măsură ce parcurge fluxul de tokenuri, beautifierul menține un nivel curent de indentare. Fiecare acoladă deschisă, paranteză pătrată sau paranteză rotundă împinge nivelul mai adânc; fiecare închidere îl readuce. Acea adâncime decide câte unități de indentare stau în fața fiecărei linii pe care o primești înapoi.
  3. Aplică opțiunile tale. Alegerea ta de indentare (2 spații, 4 spații sau un tab) stabilește lățimea unui nivel. Setarea stilului acoladei decide dacă o acoladă deschisă se alătură declarației care o precedă sau coboară pe propria linie. Limita de linii goale colapsează șirurile lungi de linii goale până la limita pe care o alegi.
  4. Re-emite. În final, formatorul printează tokenurile înapoi cu indentarea și întreruperile de linii pe care le-a calculat, adăugând opțional punctele și virgulă pe care inserția automată de punct și virgulă le-ar fi furnizat la runtime. Rezultatul este același program, aranjat astfel încât un om să îl poată citi.

De ce să frumusețești JavaScript

  • Citește cod minificat. Pachetele de producție sunt livrate pe o singură linie cu nume de variabile de o literă. Frumusețirea restaurează întreruperile de linii și indentarea, astfel încât poți urmări efectiv o eroare până la declarația care a cauzat-o, chiar și fără o hartă sursă.
  • Curăță fișiere inconsistente. Codul la care au lucrat mai multe persoane derivă în indentare mixtă și stiluri de acolade. O singură trecere prin beautifier normalizează întregul fișier la un singur aspect, ceea ce face ca următorul diff să arate schimbări reale de logică în loc de zgomot de spații albe.
  • Acest instrument nu îți încarcă pagina. Majoritatea formatorilor online își încarcă întreaga bibliotecă în momentul deschiderii paginii. Acesta încarcă leneș js-beautify doar când dai click pe Frumusețește sau activezi modul Live, astfel încât deschiderea paginii costă câțiva kiloocteți în loc de câteva sute, iar randarea inițială rămâne rapidă.
  • Nimic nu părăsește browserul tău. Beautifierul rulează în întregime pe dispozitivul tău. Codul tău nu este niciodată încărcat pe un server, ceea ce contează când scriptul pe care îl inspectezi aparține unui client, conține căi API interne sau cade sub un acord de confidențialitate.

Aplicații comune

Frumusețirea JavaScript apare oricând cineva trebuie să citească cod care nu a fost scris pentru a fi citit.

  • Depanare producție: lipește un pachet minificat extras din panoul Network pentru a găsi funcția din spatele unei erori de stivă pe care altfel nu o poți decoda.
  • Pregătire revizuire cod: reformatează un fișier indentat inconsecvent al unui contribuitor înainte de a deschide pull request-ul, astfel încât revizuitorii să vadă logica, nu schimbările de aspect.
  • Audituri de securitate și conformitate: expandează un fragment de analitică sau reclamă terță parte pentru a confirma exact ce face înainte de a deveni live.

Un exemplu practic

Ia un minificat pe o singură linie: function f(a){if(a){return a*2}else{return 0}}. Lipește-l mai sus cu indentarea setată la 2 spații și stilul acoladei Colaps, apoi click pe Frumusețește. Primești înapoi un bloc lizibil: function f(a) {, apoi un if (a) { indentat, declarația return a * 2; imbricată cu un nivel mai adânc și acoladele de potrivire aliniate dedesubt. Comută stilul acoladei la Expandare și fiecare acoladă deschisă coboară pe propria linie. Schimbă indentarea la Tabulatoare și fiecare nivel trece de la două spații la un caracter tab. Structura este identică; doar aspectul se schimbă.

FAQ

Rulează acest lucru în browserul meu?

Da. Biblioteca js-beautify este încărcată leneș prima dată când dai click pe Frumusețește sau activezi modul Live, apoi rămâne în cache. Codul tău nu părăsește niciodată pagina — nu există drum dus-întors la server și nicio încărcare.

Frumusețirea este același lucru cu de-minificarea?

Restaurează formatarea lizibilă — indentare, întreruperi de linii și spațiere — dar nu poate recupera numele originale ale variabilelor sau comentariile pe care minificarea le-a eliminat. Dacă există o hartă sursă, DevTools-ul browserului tău poate recupera numele originale; un beautifier singur funcționează doar cu ce este în fișier.

Frumusețirea va schimba modul în care se comportă codul meu?

Nu. Frumusețirea doar adaugă și elimină spații albe și întreruperi de linii; programul rulează identic. Singura opțiune care atinge tokenurile este „Adaugă punct și virgulă lipsă," care inserează terminatoarele de declarație pe care inserția automată de punct și virgulă le-ar fi adăugat oricum la runtime, făcând codul sigur pentru a fi minificat ulterior.

Ce înseamnă opțiunile de stil al acoladei?

Colaps menține acolada deschisă pe aceeași linie cu declarația (if (x) {), care este convenția comună JavaScript. Expandare plasează fiecare acoladă deschisă pe propria linie (stilul Allman). End-expand menține acolada deschisă atașată, dar pune else și catch pe o linie nouă după acolada de închidere.

Frumusețirea JavaScript pe partea browserului îți oferă cod lizibil fără un pas de build sau o încărcare. Lipește un script minificat sau dezordonat, alege indentarea și stilul acoladei, apoi copiază sau descarcă rezultatul. Nimic nu părăsește dispozitivul tău, nu există cont, iar biblioteca se încarcă doar când o ceri — astfel încât deschiderea acestei pagini costă câțiva kiloocteți, nu un megaoctet.