JavaScript

Hvor begynner vi?

JavaScript er et stort emne, så hvor begynner vi? Vi begynner med selve språket.

Vår menneskelige hjerne er laget for språk, på samme måte som en jaguar er som skapt til å løpe. Språk er vår superkraft, og kommer helt naturlig. Foreldre trenger ikke å “lære” barna sine å snakke – du trenger bare å snakke foran et barn, og de vil naturlig absorbere språket. Hjernen vår klarer å sette sammen puslebrikkene, uten å tenke særlig over det. La oss bruke dette faktum til vår fordel. Det er langt lettere å lære javascript hvis man ser på det som et språk på lik linje med engelsk, spansk eller tysk, enn om man ser på det som en kjempelang liste med rare ord som man må huske på rams.

La oss se på et engelsk eksempel: The asdf cat quickly ate the zxcv

Man ser fort at to av ordene ikke gir noen mening, men fordi vi forstår syntaksen – oppbyggingen av setningen, så kan vi forstå setningen. Vi forstår at det handler om en katt som raskt spiser et-eller-annet. Men hva har dette med JavaScript å gjøre?

Vi prater forskjellig, avhengig av hvilket miljø vi er i. Vi snakker på en måte hjemme, hvor vi har egne ord og uttrykk som vi kun bruker blant familie, og vi snakker på en annen måte på jobb, hvor vi har fagord og uttrykk som vi ikke ville brukt blant familie. 

Det samme kan sies om JavaScript. JavaScript snakkes også i forskjellige miljøer, og de tre vanligste miljøene er nettlesere, Node.js og MongoDB. Det forventes ikke at du vet hva Node.js eller MongoDB er for noe – det vil du lære senere. Alt du trenger å vite nå, er at det finnes flere miljøer for JavaScript, og hver av dem har sin sjargongsom ikke vil fungere i noe annet miljø. 

Her er en linje med javascript, som du ville brukt i en nettleser:

document.addEventListener("click", () => alert("Thanks for clicking"));

Ikke få panikk – du trenger ikke forstå denne linjen enda. Det viktigste her, er at ingen av ordene som står her, er en del av språket JavaScript. Det gjelder f.eks ordene document, addEventListener, eller ordet click, eller alert. Disse ordene har kun en betydning når man er i nettlesermiljøet. Hadde du brukt en av disse ordene i et annet miljø, som Node.js eller MongoDB, så ville de ikke forstått noenting av hva du mente. Så hvis ingen av ordene over er javascript, hva er det som gjør at linja i det hele tatt er javascript?

Jo, det er all tegnsettingen – punktum, paranteser, anførselstegn, semikolon – skjelettet, eller syntaksen til språket. Det er limet som holder språket sammen, og dét skal være det første fokuset. Det vil gjøre at når du ser en linje som over, så vil du ha samme forhold til den linja, som du har til “The asdf cat quickly ate the zxcv”.

På norsk, her er en beskrivelse av de tre forskjellige miljøene som vi skal igjennom:

“Hei, nettleser, når noen trykker på denne knappen, gjør dette som respons”

“Hei, Node, når noen besøker denne nettadressen, vis dem dette innholdet”

“Hei, MongoDB, lagre disse dataene til en database, slik at vi har tilgang til dem senere”

Ingen tidligere programmeringskunnskaper behøves for dette dokumentet. Den bør være helt fin for nybegynnere, eller hvis du har snust litt på programmering tidligere, men ikke helt funnet fotfeste.

De første stegene

Todo-applikasjon