Praktiske eksempler

Variabeldeklarasjoner

let tall = 12;
let navn = "ole";
let elev = { fornavn:"ole", etternavn:"olsen" };
let ferdig = false;
let tabell = [ 1,2,3 ];

Const

const BREDDE = 12;
const NAVN = "ole";
const ELEV = { fornavn:"ole", etternavn:"olsen" };
const FERDIG = false;
const TABELL = [ 1,2,3 ];

Merk at enkle const slik som BREDDE,NAVN,FERDIG ikke kan modifiseres.

  • Denne koden er gyldig: ELEV.fornavn = "ole hetland" // eleven har fått ett nytt mellomnavn
  • Denne er ugyldig: ELEV = { fornavn:"ole hetland, etternavn:"olsen" } // lager ny elev
  • Denne koden er gyldig: TABELL.push(4); // endrer innholdet i TABELL
  • Denne er ugyldig: TABELL = [1,2,3,4]; // Lager ny tabell

Interaksjon med skjema/html

// hent verdi fra tekstfelt
let inpNavn = document.getElementById("navn");
let navn = inpNavn.value;

// hent inn en tallverdi
let inpAlder = document.getElementById("alder");
let alder = inpNavn.valueAsNumber;

// vis tekst i en div
let divTekst = document.getElementById("tekst");
divTekst.innerHTML = " tekst som skal vises";

// funksjon aktivert av en knapp
let btnBeregn = document.getElementById("beregn");
btnBeregn.addEventListener("click", beregning);

function beregning(event) {
    // kode ...
    // typisk linjene over som henter data fra skjema/viser data
}

Legge html elementer til en div

let divMain = document.getElementById("main");
let btnKlikkMeg = document.createElement("button");
btnKlikkMeg.id = "klikkmeg";
btnKlikkMeg.innerHTML = "Klikk Meg";
btnKlikkMeg.addEventListener("click",duKlikkaMeg);
divMain.appendChild(btnKlikkMeg);
// du må også lage funksjonen duKlikkaMeg

Beregninger

let verdi = (12 + 3) / 4;
let vinkel = Math.asin(3/4);
let minst = Math.min(verdi, vinkel);

Betingelser og valg

enkel if

// enkel if
if ( betingelse ) {
    // handling dersom sann
} else {
    // handling dersom usann
}

if else if

if ( betingelse1 ) {
    // handling dersom betingelse1
} else if ( betingelse2 ) {
    // handling dersom betingelse2
}
// kan gjentas med så mange betingelser som nødvendig

Løkker

for løkke

for (let i=0; i < 10; i++) {
    // kode som gjentas 10 ganger
}

while løkke

let i = 0;
while (i<10) {
    // kode som gjentas 10 ganger
    i++;
}

travasering av array

// vi antar at tabell er en array
let antall = tabell.length;
for (let i=0; i < antall; i++) {
    let verdi = tabell[i];
    // kode som gjør noe med hver verdi
}

En moderne variant (es6)

// vi antar at tabell er en array
for (let verdi of tabell) {
    // kode som gjør noe med hver verdi
}

finn minste / største verdi i en array

// vi antar at tabell er en array av tall
// f.eks tabell = [1,2,3-5,8,0,1222]
let minst = Math.min( ... tabell);
let storst = Math.max( ... tabell);
// ... er spread operatoren

lese en fil

NB! Denne metoden virker bare dersom du laster sida fra en webserver.

I eksemplene under antar vi at funksjonen behandle tar seg av bearbeiding av motatt data.

bruk av fetch

Koden under bruker fetch metoden som støttes av moderne nettlesere slik som Chrome og Firefox.

let url = "elevliste.json";
fetch(url).then(r => r.json())
  .then(data => behandle(data))
  .catch(e => console.log("Dette virka ikke."))

bruk av xhr

Denne metoden virker i alle nettlesere, også de som er gått ut på dato.

var url = "elevliste.json";
var xhr = new XMLHttpRequest();
xhr.open('GET', url);
xhr.responseType = 'json';

xhr.onload = function() {
  behandle(xhr.response);
};

xhr.onerror = function() {
  console.log("Dette gikk ikke bra.");
};

xhr.send();

results matching ""

    No results matching ""