§

Options

Beautify options
§

Bandika JavaScript

§

JS Iliyopangwa

js

Waandaaji programu Afrika Mashariki wanaokutana na faili zilizobungwa za JavaScript — kutoka maktaba za npm au vifaa vya tatu — hutumia kiremba kupata msimbo unaoweza kufanyiwa ukaguzi. Weka faili iliyobanwa hapa, uchague mstari wa nafasi 2 unaolingana na mwongozo wa Airbnb au Prettier, kisha pakua matokeo moja kwa moja kwenye mradi wako. Inasaidia pia wakati wa ukaguzi wa usalama wa kifaa cha uchambuzi wa data kabla ya kuruhusu snipu yake kwenye mfumo wa uzalishaji — unajua nini kinatumwa kwa mtandao kabla haujaidhinisha.

Jinsi upangaji wa JavaScript unavyofanya kazi

Kiremba kinasoma msimbo wako herufi kwa herufi, kinafuatilia kina cha kila taarifa, na kuiandika upya na nafasi sawa. Hakibadilishi kinachofanya msimbo — ni jinsi unavyoonekana tu.

  1. Gawanya Tokeni. Maktaba inascanisha ingizo lako kuwa mkondo wa tokeni: maneno muhimu, vitambulisho, mifuatano, waendeshaji, na alama za uakifishaji. Mifuatano, templeti za kisheria, na kisheria cha usemi wa kawaida vinatambuliwa kama vitengo vimoja, hivyo bano la mraba ndani ya mfuatano haliwezi kuchanganyikiwa na kitenganishi cha bloku.
  2. Fuatilia Kina. Kinaposonga mkondo wa tokeni, kiremba kinadumisha kiwango cha kina cha sasa. Kila bano la ufunguzi, mabano ya mraba, au mabano ya mviringo husogeza kiwango kwa kina; kila bano la ufungaji hulichomoa. Kina hicho kinaamua idadi ya vitengo vya kina vilivyo mbele ya kila mstari unaorejeshwa.
  3. Tumia Mipangilio Yako. Chaguo lako la kina (nafasi 2, nafasi 4, au tab) linaweka upana wa kiwango kimoja. Mipangilio ya mtindo wa mabano inaamua kama bano la ufunguzi linabembelezana na taarifa inayoitangulia au kushuka kwenye mstari wake wenyewe. Kikomo cha mistari tupu kinakunja matosha marefu ya mistari tupu hadi ukomo unaochagua.
  4. Toa Matokeo. Hatimaye kipanga kinachapisha tokeni kurudi na kina na mapumziko ya mistari kilichofanya kazi, kwa hiari kikiongeza alama za nukta-mkato ambazo uingizaji wa alama za nukta-mkato ungeziongeza wakati wa utekelezaji. Matokeo ni programu ile ile, iliyopangwa ili binadamu aweze kuisoma.

Kwa nini upange JavaScript

  • Soma msimbo uliobanwa. Vifurushi vya uzalishaji vinavyosafirishwa kwenye mstari mmoja na majina ya vigeu vya herufi moja. Kupanga kunarudisha mapumziko ya mistari na kina ili uweze kufuatilia hitilafu hadi taarifa iliyoisababisha, hata bila ramani ya chanzo.
  • Panga faili zisizo na mpangilio. Msimbo ambao watu wengi wamegusa unaendelea kupata kina kilichochanganyika na mitindo tofauti ya mabano. Kupita mara moja kupitia kiremba kunasawazisha faili nzima kuwa mpangilio mmoja, ambao unafanya tofauti inayofuata ionyeshe mabadiliko ya kweli ya mantiki badala ya kelele ya nafasi.
  • Zana hii haiodhi ukurasa wako. Viremba vingi vya mtandaoni hupakia maktaba yao yote wakati unafungua ukurasa. Hii inapakia js-beautify tu unaposhinikiza Panga au kuwasha hali ya moja kwa moja, hivyo kufungua ukurasa kunagharimu kilobytes chache badala ya mamia, na utekelezaji wa awali unabaki wa haraka.
  • Hakuna kinachoacha kivinjari chako. Kiremba kinafanya kazi kabisa kwenye kifaa chako. Msimbo wako haupakiwa kwenye seva kamwe, ambayo ni muhimu wakati script unayoichunguza inamilikiwa na mteja, ina njia za ndani za API, au inashughulikiwa na makubaliano ya usiri.

Matumizi ya kawaida

Kupanga JavaScript hutokea wakati wowote mtu anahitaji kusoma msimbo ambao haukuandikwa kuwa unasomeka.

  • Kutatua matatizo ya uzalishaji: bandika kifurushi kilichobanwa kilichovutwa kutoka kwa kichupo cha Mtandao ili kupata kazi nyuma ya rundo la makosa ambalo huwezi kuifafanua vinginevyo.
  • Maandalizi ya ukaguzi wa msimbo: panga upya faili ya mchangiaji yenye kina kisicho na mpangilio kabla ya kufungua ombi la kuvuta ili wahakiki waone mantiki, si kelele ya mpangilio.
  • Ukaguzi wa usalama na uzingatiaji: panua snipu ya uchambuzi wa tatu au ya matangazo kuthibitisha nini hasa inafanya kabla haijatumwa moja kwa moja.

Mfano uliofanyiwa kazi

Chukua mstari mmoja uliobanwa: function f(a){if(a){return a*2}else{return 0}}. Bandika hapo juu na kina kimewekwa kwa nafasi 2 na mtindo wa mabano Bana, kisha bonyeza Panga. Unapata bloku inayoweza kusomeka: function f(a) {, kisha na kina if (a) {, taarifa ya return a * 2; iliyopachikwa kiwango kimoja kirefu zaidi, na mabano yanayolingana chini yake. Badilisha mtindo wa mabano hadi Panua na kila bano la ufunguzi litashuka kwenye mstari wake wenyewe. Badilisha kina hadi Tab na kila kiwango kitabadilika kutoka nafasi mbili hadi herufi ya tab. Muundo ni sawa; mpangilio tu ndio unabadilika.

FAQ

Je, hii inafanya kazi kwenye kivinjari changu?

Ndiyo. Maktaba ya js-beautify inapakia kwa uvivu mara ya kwanza unapobonyeza Panga au kuwasha hali ya moja kwa moja, kisha inawekwa kwenye akiba. Msimbo wako hauachi ukurasa kamwe — hakuna safari ya seva na hakuna upakiaji.

Je, kupanga ni sawa na kuunminify?

Kurejesha uumbizaji unaoweza kusomeka — kina, mapumziko ya mistari, na nafasi — lakini haiwezi kuleta nyuma majina ya awali ya vigeu au maoni ambayo ubanaji uliondoa. Ikiwa ramani ya chanzo ipo, DevTools ya kivinjari chako inaweza kupona majina ya awali; kiremba peke yake kinafanya kazi na kilichomo kwenye faili tu.

Je, kupanga kutabadilisha jinsi msimbo wangu unavyofanya kazi?

Hapana. Kupanga kunaongeza na kuondoa nafasi na mapumziko ya mistari tu; programu inatekelezwa sawasawa. Chaguo moja linaloathiri tokeni ni "Ongeza alama za nukta-mkato zilizokosekana," ambalo linalingatiwa vitenganishi vya taarifa ambavyo uingizaji wa alama za nukta-mkato ungeziongeza wakati wa utekelezaji, na kufanya msimbo kuwa salama kuubanwa baadaye.

Chaguzi za mtindo wa mabano zinamaanisha nini?

Bana inaweka bano la ufunguzi kwenye mstari sawa na taarifa (if (x) {), ambayo ni kawaida ya JavaScript. Panua inashuka kila bano la ufunguzi hadi mstari wake wenyewe (mtindo wa Allman). Panua-mwisho inaweka bano la ufunguzi limeambatishwa lakini inaweka else na catch kwenye mstari mpya baada ya bano la ufungaji.

Upangaji wa JavaScript upande wa kivinjari unakupa msimbo unaoweza kusomeka bila hatua ya kujenga au upakiaji. Bandika script iliyobanwa au isio nadhifu, chagua kina na mtindo wa mabano, kisha nakili au pakua matokeo. Hakuna kinachoacha kifaa chako, hakuna akaunti, na maktaba inapakia tu uiombapo — hivyo kufungua ukurasa huu kukuwa ghali kilobytes chache, si megabyte.