(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); })(window,document,'script','dataLayer','GTM-5LHNRP9'); Af hverju Javascript er einþráða - The Codest
Aftur ör Farðu aftur

Af hverju Javascript er einþráða

JavaScript er vinsælt forritunarmál sem er víða notað í vefþróun. Ein af lykilatriðum JavaScript er að það er einþráða, sem þýðir að það getur aðeins keyrt eitt stykki af kóði á einu tímabili. Þetta getur stundum verið talið takmörkun, sérstaklega þegar borið er saman við önnur forritunarmál sem styðja margþráða vinnslu. Hins vegar eru nokkrar ástæður fyrir því að JavaScript er einþráða, og skilningur á þessum ástæðum getur hjálpað forriturum að vinna mun árangursríkari með málið.

Ein af helstu ástæðunum fyrir því að JavaScript er einþráða er uppruni þess sem forritunarmál hannað fyrir vefur. Þegar JavaScript var fyrst búið til af Brendan Eich árið 1995, var ætlunin að það yrði létt forritunarmál sem auðvelt væri að innleiða í vefsíður. Á þeim tíma voru flestar tölvur einkjarna, svo ekki var þörf á að JavaScript styðji fjölþráða vinnslu. Af þeim sökum var málið hannað sem einþráða til að halda því einföldu og auðvelt í notkun.

Önnur ástæða þess að JavaScript er einþráða er sú að það keyrir í einum atburðarhring. Atburðarhringurinn er kerfi sem gerir JavaScript kleift að takast á við ósamstilltar aðgerðir, svo sem sækja gögn frá netþjóni eða við svörun notendainntaks. Þegar ósamhverf aðgerð er hafin er hún bætt í biðröð og atburðarhringurinn vinnur úr þessum aðgerðum einu í einu. Þetta tryggir að JavaScript-kóði sé keyrður á fyrirsjáanlegan og samræmdan hátt, sem getur hjálpað til við að koma í veg fyrir villur og bæta afköst.

Auk þess hjálpar einþráða eðli JavaScript til við að forðast keppnisaðstæður og aðra samhliða-vanda sem geta komið upp í fjölþráða umhverfi. Í fjölþráða kerfi geta margar þræðir samtímis nálgast og breytt sameiginlegum gögnum, sem leiðir til ófyrirsjáanlegrar hegðunar og vandamála sem erfitt er að rekja. Með því að takmarka JavaScript við eina þráð geta forritarar auðveldlega rökstutt kóðann sinn og forðast þessar tegundir vandamála.

Þrátt fyrir að vera einþráða hefur JavaScript leiðir til að takast á við samhliða aðgerðir. Til dæmis geta forritarar notað vefverka til að flytja örgjörvafreak verkefni yfir á aðskilda þræði, sem gerir aðalþræðinum kleift að halda viðbragðshraða. Auk þess, nútíma JavaScript rammasamningar og bókasöfn bjóða oft upp á verkfæri til að stjórna ósamstilltum aðgerðum, svo sem promises og async/await-setningafræði, sem auðvelda vinnu með ósamstilltan kóða í einþráða umhverfi.

Að lokum er JavaScript einþráða af ýmsum ástæðum, þar á meðal vegna uppruna síns sem vefskriftmál, hönnunar atburðahringsins og vilja til að forðast samhliða vinnu. Þó að þetta geti stundum verið talið takmörkun, hefur einþráða eðli JavaScript kosti hvað varðar einfaldleika, fyrirsjáanleika og auðveldari villuleit. Með því að skilja hvers vegna JavaScript er einþráða og hvernig best sé að vinna með takmarkanir þess geta forritarar skrifað skilvirkari og áreiðanlegri kóða í þessu forritunarmáli.

is_ISIcelandic