JavaScriptin Korkeakouluopetus
Tyylittäminen
Tyylittäminen style-attribuutin kautta
Mittayksiköt style-attribuutissa
Virheet mittayksiköissä
CSS-ominaisuuksien arvojen purku
Tyylien nollaus style-attribuutin kautta
Tyylien massasettaus
Tyylien lukemisen ongelmat
Ominaisuuksien lukeminen CSS-tiedostoista
Luettujen arvojen muuntaminen
Tyylittäminen luokilla
Yksi luokka tyylittämiseen
Luokkien hankaluus
Tyylien vuorottelu data-attribuutin kautta
Elementtien mittarit
Elementtien laajeneminen CSS:ssä
Testielementti
Elementin asiakaskoko
Elementin täysikoko
Elementin vierityskoot
Elementtien vieritys
Elementin vierityksen muuttaminen
Elementin vieritys loppuun
Elementin avaaminen
Vierityspalkin leveys
Ikkunan mittarit
Ikkunan koko
Ikkunan koko huomioiden vieritys
Ikkunan vierityksen saaminen
Ikkunan vierityksen saaminen ja muuttaminen
Menetelmä ikkunan vierittämiseksi asentoon
Menetelmä ikkunan vierittämiseksi arvon verran
Menetelmä ikkunan vierittämiseksi elementtiin
Vieritystapahtuma
Map-kokoelmat
Set-kokoelmat
Johdanto
Alustava täyttö
Hyödylliset ominaisuudet
Läpikäynti silmukalla
Muunnos
Kaksoiskappaleiden poisto taulukosta
Saaminen ilman kaksoiskappaleita
Pseudotaulukot
Johdanto
Yhtäläisyys taulukoiden kanssa
Erot
Taulukon tarkistus
Muuntaminen taulukoksi
Pseudotaulukoiden tyypit
Tyypien välinen ero
Symbolit
Johdatus Symbol-tyyppiin
Symbolin kuvaukset
Symbolit objektien avaimina
Objektin läpikäynti symboleilla
Funktio objektissa
Operaatiot objekteilla funktiossa
Globaalit symbolit
Symbolin nimen hankkiminen
Hyvin tunnetut symbolit
Iteraattorit
Iteroitavat oliot
Iteraattorifunktio
Iteraattorikutsut
Generaattorit
Silmukat generaattoreissa
Iteraattorien kertaluonteinen toiminta
Objektin iteraattori
Iteroitavan objektin luominen
Generaattori laskettuna ominaisuutena
Sisäänrakennettu values-iteraattori
Sisäänrakennettu keys-iteraattori
Sisäänrakennettu entries-iteraattori
Kolme sisäänrakennettua iteraattoria
Spread-operaattori ja iteraattorit
Merkkijonojen sisäänrakennetut iteraattorit
Luvun numerotaulukko
DOM-elementtien numerointi
DOM-elementtien tietojen haku
JSON-muoto
Tallennus
Johdanto
Tallennus debuggerissa
Data
Kertaluonteinen tallennus
Datan ylikirjoitus
Datan poistaminen
Tallennustilan tyhjennys
Merkintöjen määrä
Avaimen haku numeron perusteella
Tallennustilan läpikäynti indeksien mukaan
Tallennustilan avainten ja arvojen taulukot
Rakenteiden tallentaminen
Tallennettujen rakenteiden muokkaus
Harjoittelu
Säännölliset lausekkeet
Johdanto
Toisto-operaattorit
Ryhmittelysulkeet
Erikoismerkkien escapaus
Aaltosulkeet
Ahneuden rajoitus
Merkkiryhmät
Merkkijoukot
Merkkijoukkojen kääntäminen
Kyrillisen kirjaimiston erityispiirteet
Erikoismerkit joukoissa
Merkkiryhmät joukoissa
Poikkeus-erikoismerkit joukoissa
Hattumerkki joukoissa
Yhdysviivan erityispiirteet joukoissa
Kirjainkoon ohittaminen
Rivin alku ja loppu
Sanaraja
Monirivisyys
'Tai'-komento
Muuttuja säännöllisellä lausekkeella
Test-metodi
Search-metodi
Split-metodi
Match-metodi
Taskut match-metodissa
Globaali match
Globaali matchAll
Exec-metodi
LastIndex-ominaisuus
Taskut replace-metodissa
Takaisinkutsufunktio replace-metodissa
Oletustaskut replace-metodissa
Taskut itse säännöllisessä lausekkeessa
Nimetyt taskut
Nimetyt taskut lausekkeen sisällä
Ei-säilyttävät sulkeet
Positiivinen ja negatiivinen etsintä
Merkkijono säännöllisellä lausekkeella
Liput merkkijonoille
Keno kenoviivassa merkkijonoissa
Poikkeustilanteet
Johdanto
Esiintyvien tilanteiden tyypit
Poikkeusten sieppaaminen
Kehittäminen try-catch -lohkolla
Poikkeusten sieppaaminen sisäkkäisessä koodissa
Poikkeusobjekti
Peruspoikkeustyypit
Poikkeustyyppien soveltaminen
Poikkeusten heittäminen
Eri tyyppisten poikkeusten heittäminen
Oman tyyppisten poikkeusten heittäminen
Esimerkki poikkeuksesta data-attribuuteilla
Esimerkki poikkeuksesta JSON:lla
Poikkeusten läpiveto
Asynkronisuus
Synkroninen ja asynkroninen koodi
Tapahtumamallin asynkronisuus
Kuvien lataamisen asynkronisuus
Poikkeustilanteet asynkronisessa koodissa
Asynkroniset takaisinkutsut
Johdanto
Tuloksen asynkroninen välittäminen takaisinkutsuun
Parametrien välittäminen asynkroniseen takaisinkutsuun
Poikkeusten käsittely asynkronisissa takaisinkutsuissa
Kuvien lataaminen
Callback hell -ongelma
Kuvien asynkroninen lataaminen silmukassa
Promiset
Johdatus promiseihin
Poikkeustilanteet
Virheobjekti
Erillinen poikkeusten käsittely
Promisin tilat
Promisejen ketjutus
Promiset ketjun sisällä
Poikkeukset promisejen ketjuissa
Työskentely promise-taulukoiden kanssa
Täytettyjen promisejen luonti
Asynkronisen koodin promisointi
Promise hell -ongelma
Promiset synkronisessa tyylissä
Poikkeukset synkronisessa tyylissä
Kirjastot
Työkalut
Semanttinen versiointi
Pääte
NodeJS
Johdatus npm:ään
Asennus npm:n kautta
Lyhyt asennusmuoto
Riippuvuudet package.json-tiedostossa
Dev-riippuvuudet
Riippuvuusversioiden muodot
Package.json-tiedoston asetukset
Package.json-tiedoston luominen
Npm-projektin siirto
Package-lock.json-tiedosto
Pakettien päivitys
Pakettien poistaminen
Globaali asennus npm:n kautta
Pakettien globaali poistaminen
Npx-työkalu
Skriptien suorittaminen npm:n kautta
Yarn-paketinhallinta
ES-moduulit
Esittely moduuleihin
ES-moduulien käyttöönotto
Webpackin asennus
Webpackin toimintaperiaate
Webpackin konfigurointi
Webpack-buildauksen käynnistysasetusten määrittäminen
Testibuildaus Webpackin avulla
Bundle-yhteyden muodostaminen merkintäkieleen
ES-moduulin luominen
ES-moduulin liittäminen
Nimeäminen uudelleen tuonnissa
Koko moduulin sisällön tuonti
Oletusexportti
Exporttien yhdistelmä
Koko moduulin sisällön tuonti exporttien yhdistelmässä
Arvojen exporttaus
Arvot vakioina
Npm-moduulien tuonti
Dynaaminen tuonti
Dynaaminen moninkertainen tuonti
CommonJS-moduulien muuntaminen
HTTP-protokolla
Testauspalvelin
Johdanto
Käyttö
Koodin suorittaminen
HTML:n generointi
Vastauksen otsakkeet
Portin määrittäminen
Useita käynnistyksiä
Lomakkeet
Lomakkeen lähetys
Lomakkeen lähetysmenetelmät
Lomakkeen lähetys GET-metodilla
Lomakkeen lähetys POST-metodilla
GET-kyselyt
GET-kyselyjen soveltaminen
Lomakkeen painikkeet
Lomakkeiden lähetys JavaScriptin kautta
Lomakkeen lähetyksen estäminen
Johdatus FormDataan
FormDatan menetelmät
FormDatan iteraattorit
AJAX
Johdatus AJAX:iin
Fetchin perusteet
HTTP-vastauksen koodi
Pyynnön onnistuminen
Poikkeustilanteet
Virheiden täydellinen sieppaus
HTTP-vastauksen otsikot
JSONin saaminen
HTTP-pyynnön otsikot
GET-pyynnöt
POST-pyynnöt
Tiedot URLSearchParamsin kautta
Tiedot FormDatan kautta
Koko lomakkeen lähetys
JSONin lähettäminen
CORS-käytäntö
Evästeiden siirto
Synkroninen tyyli
Kankaan kanssa työskentely
Aloittaminen
Viivojen piirtäminen
Suorakulmioiden piirtäminen
Ympyröiden piirtäminen
Viivan värin vaihtaminen
Viivan koon vaihtaminen
Silmukat
Koodin optimointi
Sivuston latausnopeuteen vaikuttavat tekijät
Käytettävissä olevat resurssit
Toistuvien operaatioiden optimointi
Raskaiden toistuvien operaatioiden optimointi
Silmukkatoimintojen optimointi
Turhien silmukkakierrosten optimointi
Optimointi sisäänrakennetuilla funktioilla
Optimaalisen algoritmin valinta
Säännöllisten lausekkeiden käytön optimointi
DOM-työskentelyn optimointi
Muistinkulutuksen optimointi
Taulukoksi muuntamisen optimointi
Tapahtumankäsittelijöiden optimointi
Nopeuden optimointi muistin kustannuksella
Tiedot
Muuttumattomuus
Taulukon kopio
Objektin kopio
Elementtien lisääminen taulukkoon
Taulukon elementtien poistaminen
Taulukkoelementtien muuttaminen
Objektitaulukko
Satunnaisen ID:n generointi
Elementin lisääminen ID:llä
Elementin poistaminen ID:n perusteella
Elementin muuttaminen ID:n perusteella
Yhden ominaisuuden muuttaminen ID:n perusteella
Elementin hankkiminen ID:n perusteella