Utilia

JavaScript formatētājs un minimizētājs

Sakārtojiet minimizētu JavaScript, minimizējiet to ar Terser vai pārbaudiet sintaksi ar precīzu kļūdas rindu un kolonnu. Darbojas tikai jūsu pārlūkprogrammā.

Minimizēšanas opcijas

Kā formatēt vai minimizēt JavaScript

  1. Ielīmējiet kodu vai noklikšķiniet uz Atvērt failu, lai ielādētu .js, .mjs vai .jsx failu (līdz 10 MB).
  2. Izvēlieties Atkāpe un, ja dodat priekšroku Allman stilam, atzīmējiet Figūriekavas savā rindā.
  3. Noklikšķiniet uz Formatēt (sakārtot), lai kods kļūtu lasāms.
  4. Lai to samazinātu, iestatiet Minimizēšanas opcijas un noklikšķiniet uz Minimizēt. Lai tikai meklētu kļūdas, noklikšķiniet uz Pārbaudīt sintaksi.
  5. Nokopējiet vai lejupielādējiet rezultātu. Statusa rindiņa rāda izmēru pirms un pēc un ietaupījuma procentus.

Kods tiek tikai nolasīts un pārveidots, nekad nepalaists: nekas, ko ielīmējat, šajā lapā netiek izpildīts.

Sakārtošana ar js-beautify

Formatēt (sakārtot) izmanto js-beautify. Tas katru izteikumu novieto savā rindā, ievelk blokus, pievieno atstarpes ap operatoriem un aiz atslēgvārdiem un saglabā līdz vienai tukšai rindai tur, kur jums tāda bija. Tas saprot arī modernu sintaksi (klases, bultiņfunkcijas, veidņu literāļus, async/await) un JSX. Tas ir ātrākais veids, kā izlasīt minimizētu bibliotēku vai vienas rindas fragmentu, kas nokopēts no tīmekļa lapas.

Sakārtošana maina tikai atstarpes. Tā nepārbauda, vai kods ir derīgs: trūkstoša iekava vienkārši rada dīvainas atkāpes. Tam izmantojiet Pārbaudīt sintaksi.

Minimizēšana ar Terser

Minimizēt izmanto Terser, minimizētāju, ko lieto lielākā daļa JavaScript būvēšanas rīku. Tā kā tas ir liels, tas tiek lejupielādēts tikai tad, kad pirmo reizi noklikšķināt uz Minimizēt vai Pārbaudīt sintaksi. Opcijas tieši atbilst Terser iestatījumiem:

  • ES modulis (import/export) parsē kodu kā moduli (module: true): tiek piemērots stingrais režīms un augstākā līmeņa nosaukumi ir privāti, tāpēc tos var pārdēvēt un neizmantotos noņemt. Atstājiet neatzīmētu klasiskam skriptam, kura globālās funkcijas izmanto citi skripti.
  • Saspiest (compress) pārraksta kodu īsākā līdzvērtīgā kodā: konstantu aprēķināšana (2*60 kļūst par 120), nesasniedzamā koda noņemšana, var deklarāciju apvienošana, īsāki nosacījumi.
  • Saīsināt mainīgo nosaukumus (mangle) pārdēvē lokālos mainīgos un parametrus uz vienu vai diviem burtiem. Globālie nosaukumi un objektu īpašības netiek pārdēvēti nekad.
  • Saglabāt licences komentārus saglabā komentārus, kas sākas ar /*! vai satur @license vai @preserve. Visi pārējie komentāri tiek noņemti.

Minimizēšana nevar mainīt koda darbību, taču kods, kas balstās uz funkciju nosaukumiem (fn.name) vai uz eval, pēc pārdēvēšanas var darboties citādi. Tādā gadījumā noņemiet atzīmi Saīsināt mainīgo nosaukumus.

Sintakses kļūdas ar rindu un kolonnu

Ja Terser nespēj parsēt kodu, Minimizēt un Pārbaudīt sintaksi parāda kļūdas ziņojumu ar rindu un kolonnu, piemēram, „12. rinda, 8. kolonna – Syntax error: Unexpected token punc «)»“. Kolonna skaita rakstzīmes no 1. Tipisks cēlonis ir trūkstoša iekava faila agrākā vietā, tāpēc apskatiet arī rindas tieši pirms norādītās pozīcijas.

Biežāk uzdotie jautājumi

Vai mans kods tiek kaut kur augšupielādēts?

Nē. Gan js-beautify, gan Terser darbojas jūsu pārlūkprogrammā, un jūsu kods paliek jūsu datorā.

Vai varu minimizēt TypeScript?

Nē. Terser pieņem tikai JavaScript. Vispirms kompilējiet TypeScript uz JavaScript un tad minimizējiet izvadi. Vienkārša TypeScript formatēšana ar Formatēt (sakārtot) bieži darbojas, taču tipu anotācijām atstarpes var būt dīvainas.

Kāpēc mans minimizētais kods izskatās savādāk nekā rakstītais?

Saspiest aprēķina konstantas izteiksmes, iekļauj vienreiz lietotas vērtības un noņem nesasniedzamu kodu. Rezultāts darbojas tāpat. Noņemiet atzīmi Saspiest, lai noņemtu tikai atstarpes un komentārus.

Vai „ES modulis“ jāatbilst manam kodam?

Jā. Kods ar import vai export jāminimizē kā modulis. Klasisks skripts, kas minimizēts kā modulis, var zaudēt globālās funkcijas, ko izsauc citi skripti, jo augstākā līmeņa nosaukumi tiek uzskatīti par privātiem.

Kā ar JSON?

JSON ir derīgs JavaScript, tāpēc abas pogas to pieņem, taču speciālais JSON formatētājs sniedz labākus kļūdu ziņojumus un kārto atslēgas.