ECMAScriptECMAScript je skriptovací jazyk normovaný neziskovou organizací ECMA International podle specifikace ISO/IEC 16262:2011. Tento jazyk je využíván především na webových stránkách pro vytváření skriptů na straně klienta. Nyní jsou využívány především jeho implementace jako např. JavaScript, JScript a ActionScript. HistorieJavaScript byl původně vyvinut Brendanem Eichem ze společnosti Netscape a byl pojmenován Mocha, později LiveScript a nakonec JavaScript, jak jej známe dnes. V prosinci 1995, Sun Microsystems a Netscape oznámily oficiální vydání JavaScriptu a v březnu 1996 byl vydán webový prohlížeč Netscape Navigator 2.0, který JavaScript plně podporoval. Vzhledem k velkému úspěchu JavaScriptu reagoval Microsoft vydáním kompatibilního jazyka jménem JScript. Byly přidány metody, které opravily tzv. Y2K problém (neboli problém s interpretací data, počínaje rokem 2000) a vycházely ze třídy Java Date. JScript byl plně podporován prohlížečem Internet Explorer 3.0, který byl vydán v srpnu 1996. Microsoft následně dodal JScript společnosti ECMA International pro standardizaci a vytvoření specifikace ECMA-262, která začala v listopadu 1996. První verze ECMA-262 byla přijata na valném shromáždění společnosti ECMA v červnu 1997 a od té doby bylo vydáno několik dalších verzí. V červnu 2004 publikovala Ecma International standard ECMA-357 definující rozšíření E4X (ECMAScript for XML) a ES-CP (Compact Profile pro ES, ECMA-327), které byly v roce 2015 zrušeny, protože nevyhovovaly verzi ES6.[1] Verze
SyntaxeJak již bylo zmíněno, syntaxe ECMAScriptu je v mnohém podobná syntaxi programovacích jazyků Java nebo C++. Příklad práce s for cyklem: var search = function(a, x) { for(i = 0; i < a.length; i++) { if (a[i] == x) return i; } } Objektově orientované programování (invokace metod): window.setTitle(user.name); Funkce ECMAScriptu jsou objekty a mohou být uložené jako proměnné, použité jako argumenty funkce a nebo vráceny jako výsledek. Tento fakt přináší výhodu v tom, že funkce a metody mohou importovat různé funkcionality volanému objektu. var recent = posts.sort(function(a, b) { return (a.date > b.date ? -1 : 1); }).slice(0, 10); Objekty mají prototypy: function Car() { } Car.prototype = new Object(); Car.prototype.wheels = 4; Car.prototype.color = "black"; function RaceCar() { } RaceCar.prototype = new Car(); RaceCar.prototype.color = "red"; var vroom = new RaceCar(); vroom.wheels // 4 vroom.color // "red" Vlastnost prototype obsahuje odkaz na takzvaný objektový prototyp, datovou strukturu definující vlastnosti a objekty společné všem objektům vytvořeným stejným konstruktorem. Pole: var digits = [3, 1, 4, 1, 5, 9]; Objekty:[1] var img = { width: 320, height:160, src: "images/es.png" }; Regulární výrazy: var email = /([^@]+)@([^@]+)/; Reference
|