Movatterモバイル変換


[0]ホーム

URL:


Přeskočit na obsah
WikipedieWikipedie: Otevřená encyklopedie
Hledání

ECMAScript

Z Wikipedie, otevřené encyklopedie

ECMAScript jeskriptovací jazyk normovaný neziskovou organizacíECMA International podlespecifikace 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 aActionScript.

Historie

[editovat |editovat zdroj]

JavaScript byl původně vyvinutBrendanem Eichem ze společnostiNetscape a byl pojmenován Mocha, později LiveScript a nakonec JavaScript, jak jej známe dnes. V prosinci1995,Sun Microsystems a Netscape oznámily oficiální vydání JavaScriptu a v březnu1996 byl vydán webový prohlížečNetscape Navigator 2.0, který JavaScript plně podporoval.

Vzhledem k velkému úspěchu JavaScriptu reagovalMicrosoft vydáním kompatibilního jazyka jménemJScript. Byly přidány metody, které opravily tzv.Y2K problém (neboli problém s interpretací data, počínaje rokem2000) a vycházely ze třídy Java Date. JScript byl plně podporován prohlížečemInternet Explorer 3.0, který byl vydán v srpnu 1996.

Microsoft následně dodal JScript společnosti ECMA International pro standardizaci a vytvoření specifikaceECMA-262, která začala v listopadu 1996. První verze ECMA-262 byla přijata na valném shromáždění společnosti ECMA v červnu1997 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

[editovat |editovat zdroj]
VerzeDatum vydáníZměny oproti předchozí verziEditor
1Červen 1997První verzeGuy L. Steele, Jr.
2Červen1998Pouze menší změny, které umožnily udržet specifikaci plně v normách ISO/IEC 16262Mike Cowlishaw
3Prosinec1999Přidányregulární výrazy, zlepšená práce s řetězci, nová kontrola deklarací, try/catch výjimky, přísnější definice syntaktických chyb,

formátování pro číselné výstupy a další změny.

Mike Cowlishaw
4NevydánaOd čtvrté edice bylo upuštěno, kvůli neshodám ohledně složitosti jazyka. Mnoho nových funkcí bylo kvůli tomu odebráno. Některé z nich jsou navržené pro zahrnutí do nové verze "Harmony".
5Prosinec2009Byl přidán tzv. "strict mode", funkce, která umožnila přísnější a účinnější detekci chyb. Tím bylo možné se vyvarovat chyb po překladu.

Dále se zde objevily definice nových programátorských postupů, jako např. "getters" a "setters", což jsou typické konstrukty například objektového jazykaJava, neboC++.

Pratap Lakshman,Allen Wirfs-Brock
5.1Červen2011Tato edice 5.1 ECMAScript Standard funguje přesně dle mezinárodního standardu ISO/IEC 16262:2011Pratap Lakshman, Allen Wirfs-Brock
6červen2015Šestá edice přidává novou velmi významnou syntaxi pro psaní aplikací, která obsahuje třídy a moduly, jež jsou ale definovány sémanticky stejně jako v ECMAScript 5 strict mode. Mezi další nové funkce patří napříkladiterátory, generátory výjimek akolekce, což jsou opět velmi podobné, ne-li stejné funkce, jaké přináší moderní objektově orientované programovací jazyky Java, C++.Allen Wirfs-Brock
7červen2016Sedmá edice oficiálně známá jako ECMAScript 2016 byla dokončena v červnu 2016. Z nových funkčností obsahuje např. exponenciální operátor (**) a Array.prototype.includesBrian Terlson
8červen2017Osmá edice, oficiálně známá jako ECMAScript 2017 byla dokončena v červnu 2017. Nově obsahuje funkceasync/await využívající generatory a promisy.

Syntaxe

[editovat |editovat zdroj]

Jak 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 // 4vroom.color  // "red"

Vlastnostprototype obsahuje odkaz na takzvaný objektový prototyp, datovou strukturu definující vlastnosti a objekty společné všem objektům vytvořeným stejnýmkonstruktorem.

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

[editovat |editovat zdroj]
  1. ab ES Discuss - Notes 2015-03-24.esdiscuss.org [online]. [cit. 2017-09-18].Dostupné online. 
Portály:Internet
Citováno z „https://cs.wikipedia.org/w/index.php?title=ECMAScript&oldid=23032106
Kategorie:

[8]ページ先頭

©2009-2025 Movatter.jp