JavaScriptin peruskurssi
Perusteet
Johdanto
JavaScriptin suorittaminen
Ensimmäinen JavaScript-ohjelma
Ohjelmakoodin analysointi
Seuraavat esimerkit
Skriptitiedostot
Useita tiedostoja
Huomautus
Tiedostojen välimuistitus
Tarkka tila
Kommentit
Muuttujat
Muuttujien käyttö
Useiden muuttujien määrittely
Muuttujien arvojen muutokset
Useita let-sanoja yhdelle muuttujalle
Matemaattiset operaatiot luvuilla
Matemaattiset operaatiot muuttujilla
Matemaattisten operaatioiden prioriteetti
Yhtäläinen prioriteetti
Ryhmittelevät sulkeet
Murtoluvut
Negatiiviset luvut
Plusmerkki muuttujien edessä
Jakolaskun jakojäännös
Potenssiin korottaminen
Potenssiin korottamisen prioriteetti
Merkkijonot
Merkkijonojen yhdistäminen
Merkkijonon pituus
Mallinemerkkijonot
Monirivisyys
Erikoisarvot
Arvo undefined
Arvo null
Arvot true ja false
Arvo NaN
Infinity ja -Infinity
Konsoli
Tietotyyppi konsolissa
Virheet konsolissa
Vakiot
Automaattinen tyyppimuunnos
Muunnos numeroksi
Lyhyt muunnos numeroksi
Virheellisten numeroiden muunnos
Numeroiden erottaminen
Muunnos merkkijonoksi
Muunnoksen soveltaminen merkkijonoon
Loogisen tyypin muunnos
Muunnos loogiseksi tyypiksi
Merkkijonon merkit
Merkkijonojen muuttumattomuus
Merkkijonon viimeinen merkki
Merkkijonot numeroilla
Viittaus numeron numeroihin
Operaatiot muuttujan muuttamiseen
Lyhennetyt operaatiot JavaScriptissä
Inkrementointi
Prefiksi- ja postfiksityyppi
Epätarkat laskelmat
Prompt-funktio
Ongelman tyypit promptissa
Tulostus asiakirjaan
Käytäntöä virheiden etsimiseen
Käytäntöä operaatioihin
Käytäntöä kaavoihin
Taulukot
Johdanto taulukoihin
Elementtien hakeminen
Taulukon pituus
Elementtien muuttaminen
Taulukon elementtien uudelleenkirjoitus
Elementtien inkrementointi
Elementtien lisääminen avaimilla
Harvat taulukot
Elementtien lisääminen push-metodilla
Avaimet muuttujista
delete-operaattori
Käytäntää virheiden etsimiseen
Objektit
Johdatus objekteihin
Koko objektin tulostus
Objektien merkkijonon avaimet
Objektien ominaisuudet
Rajoitukset objektien avaimille
Elementtien muuttaminen
Elementtien lisääminen
Objektien järjestyksettömyys
Objektin avainten taulukko
Objektin pituus
Avaimet muuttujista
Virhe elementtiin käyttämisessä
Virhe ominaisuuteen käyttämisessä
Lasketut ominaisuudet
In-operaattori
Delete-operaattori
Objektien tyypitys
Taulukot objekteina
Erotetaan taulukot objekteista
Objektit ja primitiivit
Objektien välittäminen viittauksena
Vakiot
Ohjelmointitapa vakioiden kautta
Käytäntöä virheiden etsimisessä
Ehdot
if-else -rakenne
Suurempi ja pienempi -operaattorit
Tasa-arvon tarkistus
Eriarvoisuuden tarkistus
Muuttujien vertailu
Merkkijonojen tasa-arvo
Merkkijonojen ja numeroiden tasa-arvo
Tasa-arvo arvon ja tyypin mukaan
Eriarvoisuus arvon ja tyypin mukaan
Looginen JA
Looginen TAI
Loogisten operaattoreiden prioriteetti
Ehtojen ryhmittely
Loogisten lausekkeiden kääntäminen
Ehdot boolean-arvoilla
Arvojen vertailu boolean-tyyppiin
Lyhennetty muoto totuuden tarkistukseen
Lyhennetty muoto epätotuuden tarkistukseen
Yleinen lyhennetty tarkistusmuoto
Monimutkaiset ehdot lyhennetyssä muodossa
else-rakenteen valinnaisuus
Aaltosulkujen valinnaisuus
Aaltosulkujen valinnaisuuden ongelma
else if -rakenne
Sisäkkäiset if-else -rakenteet
switch-case -rakenne
break:n valinnaisuus
Ternaarioperaattori
Loogiset operaatiot
confirm-funktio
Näkyvyysalue
Näkyvyysalueen vivahteet
Tunnin osien tarkistus
Merkkijonojen ja taulukoiden pituuden tarkistus
Merkkijonon merkkien tarkistus
Luvun numeroiden tarkistus
Jakolaskun jäännöksen tarkistus
Käytäntöä virheiden etsimisessä
Käytäntö
Silmukat
Johdanto
for-of-silmukka
for-in-silmukka
while-silmukka
for-silmukka
for-silmukka taulukoille
Ehdot silmukoissa
Numerosumman kertyminen
Elementtien summan kertyminen
Merkkijonon muodostaminen
Luvun numerot
Aaltosulkeiden valinnaisuus
Sulkeiden valinnaisuuden ongelma
break-komento
continue-komento
Sisäkkäiset silmukat
Näkyvyysalue
Sisäkkäiset silmukat ja näkyvyysalue
Taulukoiden täyttäminen
Taulukoiden muuttaminen
Objektien täyttäminen
Objektien muuttaminen
Lipuilla työskentely
Vinkkejä koodin kirjoittamiseen
Vinkkejä koodin virheenkorjaukseen
Käytäntöä virheiden etsimiseen
Käytäntö
Monidimensioisuus
Monidimensionaaliset taulukot
Kolmiulotteinen taulukko
Mielivaltaiset taulukot
Monidimensionaalisten taulukoiden läpikäynti
Läpikäynti tavallisen for-silmukan avulla
Monidimensionaalisten taulukoiden täyttö
Ongelmia monidimensionaalisten taulukoiden täytössä
Monidimensionaalisten taulukoiden täyttö järjestyksessä
Monidimensionaaliset oliot
Monidimensionaalisten olioiden läpikäynti
Monidimensionaaliset rakenteet
Monidimensionaalisten rakenteiden läpikäynti
Olioiden taulukko
Avaimet muuttujista
Elementtien lisääminen taulukoihin
Elementtien lisääminen olioihin
Standardimetodit
Potenssit
Pyöristysfunktiot
Ääriarvot
Satunnaisluvut
Itseisarvot
Merkkien suuraakkoset
Merkkijonojen leikkaaminen
Haku merkkijonoista
Korvaus merkkijonoissa
Merkkijonojen pilkkominen
Päättelymäärät
Taulukkojen osat
Taulukkojen leikkaaminen
Haku taulukoista
Objektien avaimet
Käytäntöä virheiden etsimisessä
Käyttäjän määrittämät funktiot
Johdanto
Funktion parametrit
Useita parametreja
Muuttujaparametrit
Valinnaiset parametrit
Return-ohje
Funktioiden peräkkäinen kutsuminen
Returnin hienovarainen kohta
Silmukka ja return
Returnin käyttö silmukoissa
Returnin käsittelykeino
Liput funktioissa
Loogiset operaattorit funktioissa
Neuvoja funktioihin
Käytäntöä virheiden etsimiseen
Käytäntöä funktioista
Funktioiden muuttujat
Globaalit muuttujat
Paikalliset muuttujat
Muuttujien nimien yhteensattuma
Globaalien muuttujien muuttaminen
Globaalit muuttujat ja funktioiden parametrit
Nimien yhteensattuma parametrien kanssa
Parametrit-objektit
Funktiotyypit
Funktion lähdekoodi ja tulos
Funktio muuttujana
Funktion tallentaminen toiseen muuttujaan
Funktioiden osoittaminen muuttujiin
Funktion nimen ja muuttujan nimen yhteensopivuus
Esitystavat
Funktion esitystapojen ero
Puolipiste funktion esittämisessä
Funktiolausekkeiden vivahteet
Nimetty funktio, mutta Function Expression
Nimetyt funktiolausekkeet
Kuinka tarkistaa funktion tyyppi
Lauseke vasemmalla
Lauseke oikealla
Taulukko funktioilla
Objekti funktioilla
Funktioita sisältävän objektin käyttäminen
Sisäkkäiset funktiot
Funktioiden välittäminen parametreina
Nimetyt funktioparametrit
Välitettyjen funktioiden parametrit
Välitä numero parametrina
Funktioiden välittämisen soveltaminen
Sisäfunktiot
Sisäfunktioiden näkyvyysalue
Ulomman funktion parametrit
Ulomman ja sisemmän funktion parametrit
Samannimiset parametrit
Funktio, joka palauttaa funktion
Mikä tahansa sisäkkäisyystaso
Palautettavan funktion parametrit
Callback-funktiot
Vivahduksia
Nuolifunktiot
Nuolifunktioiden soveltaminen
Sulkeumat
Pääsy ulkoisiin muuttujiin
Funktioiden leksikaalinen ympäristö
Leksikaalisen ympäristön soveltaminen
Johdanto sulkeumiin
Laskuri sulkeumilla
Vivahde paikallinen muuttuja
Vivahde globaali muuttuja
IIFE
Funktion välitön suoritus
Funktion sijoittaminen muuttujaan
Välittömän funktionsuorituksen soveltaminen
Pyöreät sulkeet
Parametrit
Useat kutsut
Sudenkuopat
Suojava puolipiste
Sulkeumat ja IIFE
Rekursio
Johdanto
Esimerkki parametrilla
Taulukon elementtien summa rekursiossa
Monidimensioiset rakenteet
Taulukon elementtien summa
Manipulaatiot rakenteilla
Iteroivat menetelmät
Map-metodi
forEach-metodi
filter-metodi
every-metodi
some-metodi
find-metodi
käännös, tehtävät
reduce-metodi
käännös, tehtävät
Levennäoperaattori
Johdanto
Kehittyneempiä esimerkkejä
Taulukon ääriarvot
Taulukoiden yhdistäminen
Merkkijonojen pilkkominen
Numeroiden pilkkominen
Rest-operaattori
Destrukturointi
Taulukoiden destrukturointi
Taulukko funktiosta
Taulukon elementtien ohittaminen
Taulukon ylimääräiset arvot
Taulukon loppuosa
Oletusarvot taulukoille
Oletusfunktiot taulukoille
Muuttujien esittely taulukoille
Objektien destrukturointi
Muuttujien nimet objekteille
Oletusarvot objekteille
Muuttujat ja oletusarvot objekteille
Muuttujien esittely objekteille
Funktioiden parametrit
Funktioiden parametriolioiden destrukturointi
Aika
Date-olion käsittely
Muotoilu
Päivämäärämuodon vaihto
Viikonpäivän saaminen
Päivämäärän tulostaminen sanana
Ajan asettaminen
Timestamp-muoto
Ero timestampien välillä
Ero päivämääraolioiden välillä
Päivämäärien automaattinen oikaisu
Kuukauden viimeisen päivän löytäminen
Karkausvuoden määrittäminen
Oikeellisuuden tarkistus
Nykyisen vuoden päivän saaminen
Seuraavan tai edellisen kuukauden päivä
Seuraavan tai edellisen vuoden päivä
Ero hetkien välillä
Päivän hetki
Päivän alku
Päivän loppu
Aikojen syklinen tarkistus
Käytäntöä ajanhetkien saamiseksi
Merkkijonovertailu
Päivämäärän vertailu ilman vuotta
Päivämäärän osuminen väliin
Päivämääraolioiden vertailu
DOM:een johdanto
Johdanto
DOM-elementit
DOM-elementtien hankinta
Monimutkaiset DOM-elementin valitsimet
Tapahtumakäsittelijöiden sitominen
Nimetyt käsittelijät
Yksi käsittelijä useille elementeille
Yhden tapahtuman useat käsittelijät
Eri tapahtumien käsittelijät
Elementin teksti
Elementin HTML-koodi
Tagien määreet ominaisuuksina
Tekstikenttien käsittely
Tekstikenttien fokus
Poikkeusmääreet
Menetelmien ja ominaisuuksien ketjutus
Ketjutuksen edut ja haitat
This-objekti
Thisin etu
Elementtiryhmän hankinta
Nimetyt käsittelijät silmukassa
Anonyymit käsittelijät silmukassa
Tapahtumakäsittelijöiden irrottaminen
Käsittelijöiden irrottaminen silmukassa
Anonyymien käsittelijöiden irrottaminen
Neuvoja koodin kirjoittamiseen
Käytäntöä virheiden etsimiseen
Harjoittelutehtävät
Attribuutit
Attribuuttien hakumenetelmä
Attribuuttien asetusmenetelmä
Attribuuttien poistomenetelmä
Attribuuttien tarkistusmenetelmä
Mukautetut attribuutit
Yhdysviivalliset attribuuttien nimet
Attribuuttien käsittely menetelmin
CSS-luokkien taulukko
CSS-luokkien lisääminen
CSS-luokkien poistaminen
CSS-luokkien tarkistaminen
CSS-luokkien toggle
Tyylittäminen
Tyylittäminen style-attribuutin avulla
Yhdysviivallisten ominaisuuksien tyylittäminen
Poikkeus elementtien tyylittämisessä
Tyylittäminen CSS-luokkien avulla
CSS-luokkien käytön etu tyylittämisessä
Tyylittämisen soveltaminen
Haku
Elementtien jälkeläisten löytäminen
Elementtien vanhempien löytäminen
Kaikkien elementtien vanhempien etsiminen
Elementtien naapurien etsiminen
Elementin etsiminen id:n perusteella
Elementin etsiminen tagin nimen perusteella
Elementin etsiminen luokan nimen perusteella
Etsiminen elementin sisältä
Solmut
Lomakkeet
Textarea-kentän käsittely
Elementtien estäminen
Valintaruutujen käsittely
Arvottomien attribuuttien vuorottelu
Radiopainikkeiden käsittely
Change-tapahtuma
Input-tapahtuma
Focus- ja blur-metodit
Käytäntöä virheiden etsimiseen
Pudotusvalikot
Pudotusvalikoiden käsittely
Value-attribuutti pudotusvalikoissa
Valitun kohteen vaihtaminen listassa
Valitun kohteen numero listassa
Pudotusvalikon kohteiden hakeminen
Kohteet taulukkona
Pudotusvalikon kohteiden käsittely
Valikon kohteen valinta
Valitun kohteen hakeminen
Tapahtuma-olio
Perusteet Tapahtuma-olion kanssa työskentelyyn
Tapahtuman koordinaatit
Tapahtuman tyyppi
Tapahtuman elementti
Painettujen näppäimien saaminen
Modifioivien näppäimien seuranta
Oletustoiminnon peruuttaminen
Tapahtumien kupliminen
Kohde-elementti kuplimisen aikana
Tapahtumien kuplimisen lopettaminen
Useita käsittelijöitä elementillä
Kuplimisen välitön lopettaminen
Tapahtumien kuplimisen lopettamisen soveltaminen
Tapahtumien tarttuminen
Käsittelijät uusille elementeille
Tapahtumien delegointi
Yleismaailmallinen tapahtumien delegointi
Konteksti
Kontekstin perusteet
Sitomattoman funktion konteksti
Kontekstin menettäminen
Kontekstiongelman ratkaiseminen
Ratkaisu muuttujan avulla
Ratkaisu parametrin avulla
Ratkaisu nuolifunktion avulla
Call-metodi
Call-metodi parametreilla
Apply-metodi
Bind-metodi
Ajastimet
Ajastimen käynnistys
Laskuri ajastimella
Ajastimen pysäyttäminen
Käynnistyspainikkeet
Useita käynnistyksiä
Pysäytyspainikkeet
DOM:n käsittely
Ajastimet ja kontekstin menetys
Harjoittelu ajastimista ja DOM:sta
Viive ennen suoritusta
Ajastin viiveellä
Elementtien manipulointi
Elementtien luominen ja lisääminen
Tapahtumien kytkeminen lisäyksen yhteydessä
Elementtien luominen silmukassa
Käsittelijöiden kytkeminen silmukassa
Elementtien poistaminen
Lisääminen reunaan
Lisääminen ennen
Vierekkäinen lisääminen
Tagien vierekkäinen lisääminen
Elementtien kloonaus
Elementtien tarkistaminen
Harjoitus
Elementtien luominen taulukosta
Harjoitus luetteloiden ul luomiseen
Taulukoiden luominen
Taulukoiden johdonmukainen täyttäminen
Taulukon luominen taulukosta
Taulukon luominen objektitaulukosta
Rivien ja sarakkeiden lisääminen taulukkoon
Taulukon solujen muokkaaminen
Uusien elementtien poistaminen
Linkki elementin poistamiseen
Poistolinkkien luominen
Yksittäisen elementin muokkaaminen
Tekstin piilottaminen muokatessa
Muokkaaminen elementtiryhmässä
Poistaminen ja muokkaaminen
Elementtien tyylittely
Painikkeet elementin piilottamiseen ja näyttämiseen
Useita elementtejä näyttöpainikkeilla
Elementtien aktivointi
Aktivaatiotyylien vuorottelu
Harjoitus elementtien muuttamisesta
Funktiot ja DOM
Funktiot DOM-elementin käsittelyyn
Funktiot elementtiryhmän käsittelyyn
Callback-funktion välittäminen DOM-käsittelyyn
Järjestysnumeron välittäminen callback-funktioon
Elementin välittäminen funktion parametrina
Elementtiryhmän välittäminen parametreina
Funktio HTML-taulukoiden luomiseen
Taulukon palauttaminen funktiosta
Funktio taulukon luomiseksi taulukosta