JavaScript

Úr Wikipediu, frjálsa alfræðiritinu
Jump to navigation Jump to search
Athugið að Java er annað og óskylt forritunarmál.

JavaScript (eða Jövuskrift) er forritunarmál sem er oft notað á vefsíðum. Það er túlkað (ekki þarf að þýða það fyrirfram) og æðra (líkist meira hugsunum mannsins en þeim ferlum sem tölvan keyrir að lokum). Það má bæði nota til að keyra litlar skriftur og stór hugbúnaðarverkefni. Jövuskrift náði mikilli útbreiðslu þar sem það var eina forritunarmálið sem var hægt að nota til að búa til gagnvirkar vefsíður án þess að notandi þyrfti að hlaða niður aukalegum hugbúnaði fyrir vafrann sinn. Þess vegna er Jövuskriftar-kóði notaður á flestum stærri vefsíðum í dag, þar getur það hvort tveggja gert litla útreikninga og keyrt heilu tölvuleikina. Jövuskrift er í dag notuð til að skrifa vefsíður, netþjóna, skriftur, forrit, og smáforrit.

JavaScript er stutt af vöfrum en ekki eina forritunarmálið sem hægt er að nota fyrir þá. Bæði er hægt að nota WebAssembly sem nánast allir vafrar (þ.e. aðrir en Internet Explorer 11) styðja, beint en aðallega með því að nota önnur forritunarmál, s.s. C eða C++, sem þýðast yfir í það; en líka er hægt að nota önnur mál, s.s. TypeScript, sem þýðast yfir í JavaScript (og þar með hafa nákvæmlega sama stuðning í vöfrum), eða jafn vel öll þessi mál saman. Java var áður fyrr stutt vel í vöfrum, en ekki lengur, og þó svo að það eru líkindi milli Java og JavaScript eru það ólík og aðskilin mál sem hafa mjög mismunandi hönnun (þó bæði hlutbundin, er Java t.d. ekki byggt á prótótýpum).

Þó svo að nöfn forritunarmálanna JavaScript og Java séu svipuð, og svo málskipan og stöðluðu forritasöfnin, þá eru forritunarmálin alveg aðskilin og þau hafa mjög mismunandi í hönnun. Við hönnun JavaScript voru áhrifavaldarnir forritunarmálin Self og Scheme.[1] Raðbundna sniðið (e. serialization format) JSON, sem er notað til að geyma gagnagrindur í skrám eða til að senda þær í gegnum netið, byggist á JavaScript (en hægt að nota JSON með hvaða forritunarmáli sem er).[2]

Ásamt HTML og CSS er JavaScript eitt af megintækninni á bak við veraldarvefinn.[3] JavaScript virkjar gagnvirkar vefsíður og er mikilvægur hluti vefforrita. Meirihluti vefsíðna nota það,[4] og vinsælustu vafrarnir hafa sérstakar JavaScript vélar til að keyra kóðann.

Saga[breyta | breyta frumkóða]

Árið 1995 var Netscape Navigator langvinsælasti vafrinn, en hann skorti skriftumál til að gera síður gagnvirkar. Brendan Eich hannaði þá fyrstu útgáfuna af Jövuskrift á 10 dögum. Málfarsreglum Jövuskriftar svipar nokkuð til forritunarmálsins Jövu, en þó er enginn skyldleiki á milli þeirra. Bæði eiga nöfnin að vísa til tegundar kaffibaunar sem kemur frá indónesísku eyjunni Jövu.

Í dag eru nær allir vafrar eru með innbyggðan Jövuskriftar-túlk.

Jövuskrift var stöðluð árið 1997 undir heitinu ECMAScript sem er nú orið að ISO-staðli.

Dæmi[breyta | breyta frumkóða]

Prentun[breyta | breyta frumkóða]

Hægt er að láta upplýsingar birtast með eftirfarandi skipan:

console.log("Góðan dag!")

Hér þýðir console = mælitækjaborð, og log = að skrá.

Föll[breyta | breyta frumkóða]

Skrifa má föll (functions) svona:

function Meðaltal (fyrsta_tala, önnur_tala) {
  return (fyrsta_tala + önnur_tala) / 2
}

console.log( Meðaltal(5, 8) )

Hér tekur fallið „Meðaltal“ inn tvær mismunandi tölur, finnur summu þeirra og deilir svo í tvennt. Síðasta lína kóðans prentar svo út meðaltal fimm og átta, sem er sex og hálfur.

Fibonacci-runan[breyta | breyta frumkóða]

Hin fræga Fibonacci-runa (1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, …) er fengin með því að summa saman tvær tölur og summa síðan síðustu töluna við nýju niðurstöðuna, og þannig endalaust áfram. Formleg stærðfræðileg skilgreining á rununni er fræg fyrir að vísa í sig sjálfa, hún lítur svona út:

Þessa skilgreiningu má setja upp í Jövuskrift:

/*
  Þetta er fall sem skilar þeirri Fibonacci-tölu sem er númer X.
*/
function Fibonacci(númer) {
  /*
    Ef beðið er um Fibonacci-tölu númer 0 eða 1, þá skilum við bara 0 eða 1
  */
  if (númer < 2) {
    return númer
  }
  /*
    En annars köllum við í fallið sjálft.
    Ef beðið er um Fibonacci-tölu nr. 11 getum við fundið hana með 
    að finna Fibonacci-tölur nr. 10 og 9 og summa þær saman.
    Þær tölur þurfa að fara sömu leið til að finna gildi sitt, 
    og þannig koll af kolli þangað til gildi tölunnar er fundið.
  */
  return Fibonacci(númer - 1) + Fibonacci(númer - 2)
}

/*
  Fibonacci-tala nr. 11 er talan 89, og ef við biðjum 
  fallið um að finna tölu nr. 11 fæst einmitt útkoman 89.
*/
console.log( Fibonacci(11) )

Heimildir[breyta | breyta frumkóða]

  1. „ECMAScript Language Overview“ (PDF). 23. október 2007. bls. 4. Afrit af upprunalegu (PDF) geymt þann 2010-07-13. Sótt 3. maí 2009.
  2. „Introducing JSON“. Sótt 25. maí 2019.
  3. Flanagan, David. JavaScript - The definitive guide (6. útgáfa). bls. 1. JavaScript is part of the triad of technologies that all Web developers must learn: HTML to specify the content of web pages, CSS to specify the presentation of web pages and JavaScript to specify the behaviour of web pages.
  4. „Usage Statistics of JavaScript for Websites, March 2018“. w3techs.com.