Grundlæggende JavaScript Tutorial
Grundlæggende
Introduktion
Kørsel af JavaScript
Første program i JavaScript
Analyse af programkode
Yderligere eksempler
Filer med scripts
Flere filer
Bemærkning
Cache af filer
Strict mode
Kommentarer
Variable
Brug af variable
Deklaration af flere variable
Ændringer af variableværdier
Flere let for en variabel
Matematiske operationer med tal
Matematiske operationer med variable
Prioritet for matematiske operationer
Lige prioritet
Grupperingsparenteser
Brøker
Negative tal
Plus foran variable
Rest ved division
Eksponentiering
Prioritet for eksponentiering
Strenge
Addition af strenge
Længde af streng
Skabelonstrenge
Flere linjer
Specielle værdier
Værdien undefined
Værdien null
Værdierne true og false
Værdien NaN
Infinity og -Infinity
Konsol
Datatype i konsollen
Fejl i konsollen
Konstanter
Automatisk typekonvertering
Konvertering til tal
Kort konvertering til tal
Konvertering af ugyldige tal
Uddragelse af tal
Konvertering til streng
Anvendelse af konvertering til streng
Logisk typekonvertering
Konvertering til logisk type
Stregtegn
Uforanderlighed af strenge
Sidste tegn i streng
Strenge med cifre
Adgang til tallets cifre
Operationer til ændring af variabel
Kortfattede operationer i JavaScript
Inkrementering
Præfiks og postfiks type
Unøjagtige beregninger
Funktionen prompt
Problem med typer i prompt
Udskrift til dokument
Praksis i fejlsøgning
Praksis i operationer
Praksis i formler
Arrays
Introduktion til arrays
Hentning af elementer
Array længde
Ændring af elementer
Overskrivning af array elementer
Inkrementering af elementer
Tilføjelse af elementer via nøgler
Tynde arrays
Tilføjelse af elementer via push
Nøgler fra variabler
Delete operatoren
Øvelse i fejlfinding
Objekter
Introduktion til objekter
Visning af hele objektet
Objekters strengnøgler
Objektegenskaber
Begrænsninger for objekternøgler
Ændring af elementer
Tilføjelse af elementer
Objekters uorden
Array af objekternøgler
Objekts længde
Nøgler fra variable
Fejl ved tilgang til element
Fejl ved tilgang til egenskab
Beregnet egenskaber
Operatoren in
Operatoren delete
Typning af objekter
Arrays som objekter
Forskellen mellem arrays og objekter
Objekter og primitiver
Overførsel af objekter som reference
Konstanter
Programmering via konstanter tilgang
Øvelse i fejlfinding
Betingelser
If-else konstruktion
Større og mindre operatorer
Kontrol for lighed
Kontrol for ulighed
Sammenligning af variable
Lighed af strenge
Lighed af strenge og tal
Lighed efter værdi og type
Ulighed efter værdi og type
Logisk OG
Logisk ELLER
Prioritet for logiske operatorer
Gruppering af betingelser
Invertering af logiske udsagn
Betingelser med boolske værdier
Sammenligning af værdier med boolsk type
Forkortet form for sandhedstjek
Forkortet form for falskhedstjek
Generel forkortet form for kontrol
Komplekse betingelser i forkortet form
Frivillighed af else-konstruktionen
Frivillighed af krøllede parenteser
Problemet med frivillige parenteser
Else if konstruktion
Indlejrede if-else konstruktioner
Switch-case konstruktion
Frivillighed af break
Ternær operator
Logiske operationer
Confirm funktion
Scope
Nuancer af scope
Kontrol af timedele
Kontrol af længde på strenge og arrays
Kontrol af tegn i streng
Kontrol af cifre i tal
Kontrol af rest ved division
Praksis i fejlfinding
Praksis
Løkker
Introduktion
For-of-løkke
For-in-løkke
While-løkke
For-løkke
For-løkke for arrays
Betingelser i løkker
Akkomulering af talsum
Akkomulering af elementsum
Oprettelse af strenge
Tal cifre
Valgfrihed af krøllede parenteser
Problemet med valgfrie parenteser
Break-sætning
Continue-sætning
Indlejrede løkker
Scope
Indlejrede løkker og scope
Udfyldning af arrays
Ændring af arrays
Udfyldning af objekter
Ændring af objekter
Arbejde med flag
Råd til kodning
Råd til fejlfinding
Praksis i fejlfinding
Praksis
Flerdimensionalitet
Flerdimensionelle arrays
Tredimensionelt array
Arbitrære arrays
Gennemløb af flerdimensionelle arrays
Gennemløb med almindelig for
Udfyldning af flerdimensionelle arrays
Problemer ved udfyldning af flerdimensionelle arrays
Udfyldning af flerdimensionelle arrays i rækkefølge
Flerdimensionelle objekter
Gennemløb af flerdimensionelle objekter
Flerdimensionelle strukturer
Gennemløb af flerdimensionelle strukturer
Array af objekter
Nøgler fra variable
Tilføjelse af elementer til arrays
Tilføjelse af elementer til objekter
Standardmetoder
Potenser
Afrundingsfunktioner
Ekstremum
Tilfældighed
Absolutværdier
Stor og lille skrift
Uskæring af strenge
Søgning i strenge
Erstatning i strenge
Opdeling af strenge
Endeelementer
Dele af arrays
Uskæring af arrays
Søgning i arrays
Objektnøgler
Praksis i fejlfinding
Brugerdefinerede funktioner
Introduktion
Funktionsparametre
Flere parametre
Variable parametre
Valgfrie parametre
Return-sætningen
Sekventiel funktionskald
Return-finessen
Løkke og return
Anvendelse af return i løkker
Kneb til arbejde med return
Flag i funktioner
Logiske operatorer i funktioner
Råd om funktioner
Praksis i fejlfinding
Praksis i funktioner
Funktionsvariabler
Globale variabler
Lokale variabler
Overensstemmelse af variabelnavne
Ændring af globale variabler
Globale variabler og funktionsparametre
Overensstemmelse af navne med parametre
Parameter-objekter
Funktionstyper
Funktions kildekode og resultat
Funktion som variabel
Skrivning af funktion til en anden variabel
Tildeling af funktioner til variabler
Overensstemmelse af funktionsnavn og variabel
Erklæringstyper
Forskel i funktionserklæringer
Semikolon ved funktionserklæring
Nuancer ved funktionelle udtryk
Funktion med navn, men Function Expression
Navngivne funktionelle udtryk
Sådan kontrolleres funktionstype
Udtryk til venstre
Udtryk til højre
Array med funktioner
Objekt med funktioner
Anvendelse af objekt med funktioner
Indlejrede funktioner
Overførsel af funktioner som parametre
Navngivne funktioner
Parametre for overførte funktioner
Overførsel af tal som parameter
Anvendelse
Interne funktioner
Synlighedsområde for indlejrede funktioner
Parametre for den ydre funktion
Parametre for ydre og indre funktioner
Parametre med samme navn
Funktion der returnerer en funktion
Ethvert indlejringsniveau
Parametre for den returnerede funktion
Callback-funktioner
Nuancer ved callbacks
Pilefunktioner
Anvendelse af pilefunktioner
synk. med oversættelse
Closures
Adgang til eksterne variable
Funktioners leksikalske miljø
Anvendelse af leksikalsk miljø
Introduktion til closures
Tæller med closures
Nuance lokal variabel
Nuance global variabel
IIFE
Umedebar funktionskald
Tildeling af funktion til variabel
Anvendelse af umedebart funktionskald
Runde parenteser
Parametre
Flere opkald
Faldgruber
Beskyttende semikolon
Closures og IIFE
Rekursion
Introduktion
Eksempel med parameter
Sum af arrayelementer med rekursion
Flerdimensionelle strukturer
Sum af arrayelementer
Manipulation af strukturer
Gennemløbsmetoder
Metoden map
Metoden forEach
Metoden filter
Metoden every
Metoden some
Metoden find
oversættelse, opgaver
Metoden reduce
oversættelse, opgaver
Spread-operatoren
Introduktion
Mere avancerede eksempler
Ekstreme arrayværdier
Fletning af arrays
Opdeling af strenge
Opdeling af tal
Rest-operatoren
Destrukturering
Destrukturering af arrays
Array fra funktion
Spring array elementer over
Overflødige array værdier
Resten af arrayet
Standardværdier for arrays
Standardfunktioner for arrays
Variabeldeklaration for arrays
Destrukturering af objekter
Variabelnavne for objekter
Standardværdier for objekter
Variable og standardværdier for objekter
Variabeldeklaration for objekter
Funktionsparametre
Destrukturering af funktions parameterobjekter
Tid
Arbejde med Date-objektet
Formatering
Ændring af datoformat
Hent ugedag
Udskriv dato med ord
Indstilling af tid
Timestamp-format
Forskel mellem timestamps
Forskel mellem datoobjekter
Automatisk justering af datoer
Find sidste dag i måneden
Bestemmelse af skudår
Korrekthedstjek
Hent dag i indeværende år
Dag i næste eller forrige måned
Dag i næste eller forrige år
Forskel mellem tidspunkter
Tidspunkt på dagen
Dagens start
Dagens afslutning
Cykelisk tjek af tidspunkter
Praktisk øvelse i at hente tidspunkter
Sammenligning af strenge
Sammenligning af dato uden år
Dato inden for et interval
Sammenligning af datoobjekter
Introduktion til DOM
Introduktion
DOM-elementer
Hentning af DOM-elementer
Avancerede selektorer for DOM-elementer
Tilknytning af håndterere
Navngivne håndterere
En håndterer til flere elementer
Flere håndterere for én begivenhed
Håndterere for forskellige begivenheder
Elementets tekst
Elementets HTML-kode
Tag-attributter som egenskaber
Arbejde med tekstfelter
Fokus for tekstfelter
Undtagelsesattributter
Kæder af metoder og egenskaber
Fordele og ulemper ved kæder
Objektet this
Fordelen ved this
Hentning af en gruppe af elementer
Navngivne håndterere i en løkke
Anonyme håndterere i en løkke
Frigøring af begivenhedshåndterere
Frigøring af håndterere i en løkke
Frigøring af anonyme håndterere
Råd til kodeskrivning
Praksis i fejlfinding
Praksis
Attributter
Metode til at hente attributter
Metode til at indstille attributter
Metode til at fjerne attributter
Metode til at tjekke attributter
Brugerdefinerede attributter
Attributnavne med bindestreger
Tilgang til attributter via metoder
Array af CSS-klasser
Tilføjelse af CSS-klasser
Fjernelse af CSS-klasser
Tjek af CSS-klasser
Toggling af CSS-klasser
Styling
Styling via style-attribut
Styling af egenskaber med bindestreg
Undtagelse ved styling af elementer
Styling via CSS-klasser
Fordel ved styling med CSS-klasser
Anvendelse af styling
Søgning
Findning af elementers efterkommere
Findning af elementers forældre
Søgning efter alle forældreelementer
Søgning efter elementers naboer
Søgning efter element via id
Søgning efter element via tag-navn
Søgning efter element via klassenavn
Søgning inde i et element
Noder
Formular
Arbejde med textarea
Deaktivering af elementer
Arbejde med checkbokse
Alternering af attributter uden værdier
Arbejde med radioknapper
Change-eventet
Input-eventet
Focus og blur metoder
Praktisk fejlfinding
Dropdown-lister
Arbejde med dropdown-lister
Value-attributten i dropdown-lister
Ændring af valgt listeelement
Nummer på valgt listeelement
Hentelse af dropdown-liste elementer
Elementer som et array
Arbejde med dropdown-liste elementer
Valg af listeelement
Hentelse af valgt element
Event-objektet
Grundlæggende arbejde med Event-objektet
Event-koordinater
Event-type
Event-element
Hentning af trykte taster
Sporing af modifier-taster
Annullering af standardhandling
Event-bobling
Målelement ved bobling
Stoppelse af event-bobling
Flere håndterere på element
Omstraks stoppelse af bobling
Anvendelse af stoppelse af event-bobling
Event-capturing
Håndterere på nye elementer
Event-delegering
Universel event-delegering
Kontekst
Grundlæggende om arbejde med kontekst
Kontekst for ubunden funktion
Tab af kontekst
Løsning på kontekstproblemet
Løsning via variabel
Løsning via parameter
Løsning via pilfunktion
Call-metoden
Call-metoden med parametre
Apply-metoden
Bind-metoden
Timere
Start af en timer
Tæller på timer
Stopping af en timer
Knapper til start
Gentaget start
Knapper til stop
Arbejde med DOM
Timere og tab af kontekst
Praktik med timere og DOM
Forsinkelse før udførelse
Timer via forsinkelse
Manipulation af elementer
Oprettelse og indsættelse af elementer
Tilknytning af begivenheder ved indsættelse
Oprettelse af elementer i løkke
Tilknytning af håndterere i løkke
Fjernelse af elementer
Indsættelse fra kanten
Indsættelse før
Tilstødende indsættelse
Tilstødende indsættelse af tags
Klonering af elementer
Kontrol af elementer
Praksis
Oprettelse af elementer fra et array
Praksis i oprettelse af ul-lister
Oprettelse af tabeller
Konsekvent udfyldning af tabeller
Oprettelse af tabel fra et array
Oprettelse af tabel fra et array af objekter
Tilføjelse af rækker og kolonner til en tabel
Ændring af tabelceller
Sletning af nye elementer
Sletningslink for element
Oprettelse af sletningslinks
Redigering af enkelt element
Skjuler tekst under redigering
Redigering i et sæt af elementer
Sletning og redigering
Styling af elementer
Knapper til at skjule og vise element
Mange elementer med visningsknapper
Aktivering af elementer
Alternering af aktiveringsstile
Praksis i ændring af elementer
Funktioner og DOM
Funktioner til arbejde med DOM-element
Funktioner til arbejde med en gruppe af elementer
Videregivelse af callback til arbejde med DOM
Videregivelse af sekvensnummer i callback
Videregivelse af element som funktionsparameter
Videregivelse af gruppe af elementer som parametre
Funktion til oprettelse af HTML-tabeller
Returnering af tabel fra funktion
Funktion til oprettelse af tabel fra array