Ajalugu • Mocha -> Live. Script -> Java. Script (1995 – Netscape) • 1996: Java. Script Internet Explorer 3. 0 -is • 2000: Opera, Safari, Google Chrome • ECMAScript -> Java. Script, Action. Script, JScript
Java. Script vs Java • Nimi pandi Netscape’i autorite poolt kasutamaks Java edu tol ajal. • Vastukaaluks lubati Javat kasutada Netscape’is. • Pinnapealsed sarnasused, mõlemad enamasti C süntaksi järgi. • Self (oop), Scheme (funktsionaalne, protseduurne) -> Java. Script
Imperatiivne ja struktureeritud • Kõik stuktureeritud keele elemendid (if, while, switch) • Funktsioonipõhine skoop • Bloki skoop ainult let-iga. • Avaldised (expression: a=2+5, 4==4) • Laused (statement: if-lause) • [Näide 2]
Dünaamiline • Tüüpimine väärtuste mitte muutujate järgi. • Objekti põhine: Objektid on massiivid sõneliste võtmetega. • Enamik objekti omadusi saab numereerida for. . . in tsükliga. • Eval funktsioon. • [Näide 3]
Funktsionaalne • Funktsioonid on kõrgemat järku, s. t. nad on omaette omadustega objektid ja neid saab käsitleda objektidena. • Funktsioonide sisesed funktsioonid (ka nimeta) • [Näide 4]
Objekt-orienteeritus • • Prototüübid klasside asemel Funktsioonid kui konstruktorid Funktsioonid kui meetodid [Näide 5]