Ebben a tananyagrészben a JavaScript programozási nyelvnek főként azon részéről lesz szó, amivel egy honlapon interakciókat valósíthatunk meg. Ezt gyakran JavaScript DOM-nak szokták nevezni, amiben a DOM a Document Object Model rövidítése.
Amikor a Document Object Modelről beszélünk, gondolhatunk arra, hogy amikor egy böngésző megnyit egy html fájlt, akkor a html elemek betöltődnek a számítógép memóriájába (a betöltődött elemek összességét hívják DOM fának), és JavaScripttel azt tudjuk manipulálni, ami a számítógép memóriájába betöltődött, nem pedig magát a html fájlt. Vagyis ha az adott html oldalt újra betöltjük a böngészővel, akkor a JavaScript által végzett módosítások elvesznek.

Ez elsőre furcsának tűnhet, de például gondoljunk bele, hogy mondjuk egy jelszó esetén rákattintottunk arra az ikonra, hogy látszódjon a jelszó, akkor nem biztos, hogy az oldal következő betöltésekor (ugyanazon a számítógépen) szerencsés, ha látszódik a jelszó. Kivételek persze ebben is vannak, például ha egy honlapon különböző kinézetek közül lehet választani, akkor azt szeretnénk, hogy ha kiválasztunk egy eltérőt az alapbeállítástól, azt ne kelljen a honlap legközelebbi megnyitása után is kiválasztani. Erre több megoldás is van, például a sütik, vagy a bejelentkezés és felhasználói adatok tárolása adatbázisban.
Fájlok tartalmát kliens oldali JavaScripttel (azaz a hagyományos JavaScripttel) nem tudjuk megváltoztatni, biztonsági okokból. Ha esetleg fájlok tartalmát szeretnénk megváltoztatni, ahhoz PHP-t, illetve MySQL-t szoktunk használni, esetleg a PHP helyett szerveroldali JavaScriptet, amit NodeJS-nek szoktak nevezni.
Ebben a tananyagrészben nem lesz szó szerveroldali JavaScriptről (NodeJS-ről), csak kliensoldali JavaScriptről.
Ebben a tananyagrészben nem lesz szó részletesebben a programozással kapcsolatos alapfogalmakról (pl. változó, elágazás, ciklus, tömb, függvény, osztály, objektum), mivel ezekről már írtam egy különálló tananyagot, ahol JavaScript példák is szerepelnek. Ezt a tananyagot azoknak tanácsos a jelen tananyagrész megkezdése előtt elolvasnia, akik teljesen nulláról kezdik most tanulni a JavaScriptet. A tananyag itt érhető el:
Mint ahogy az a tananyag címében látható, a tananyagban szerepelnek C++ példák is, amelyeket nem szükséges elolvasni, megérteni a webfejlesztéshez. Azért lett ez a két nyelv kiválasztva ebben a tananyagban, hogy legyen egy erősen, statikusan típusos és egy gyengén, dinamikusan típusos programozási nyelvre is példa, az előbbi a C++, az utóbbi a JavaScript.