Autor:
JavaScript to skryptowy język programowania najczęściej wykorzystywany na witrynach internetowych. Jest on obsługiwany przez większość współczesnych przeglądarek WWW. Pozwala na umieszczanie w kodzie HTML lub XHTML skryptów wykonujących różne zadania — jakich, to już zależy od programisty. JavaScript to również jeden ze składników DHTML-a, czyli Dynamicznego HTML-a (z ang. Dynamic HTML). Można powiedzieć, że DHTML to technika tworzenia i modyfikacji elementów strony za pomocą języka skryptowego.
Wszystko to pozwala na budowanie stron reagujących na działania użytkownika, sprawdzanie poprawności formularzy, obsługę elementów interfejsu strony (np. dynamicznych menu i przycisków), dynamiczne generowanie treści oraz realizację wielu innych efektów. Aby jednak tworzyć takie witryny, najpierw trzeba poznać sam JavaScript i sposoby pisania w nim skryptów.
Historia tego języka sięga połowy lat 90. ubiegłego wieku, kiedy to w firmie Netscape powstał język LiveScript przemianowany następnie (w roku 1995) na JavaScript. Jego głównym twórcą był Brendan Eich. W kolejnych latach powstały kolejne wersje, język został też ustandaryzowany przez organizację ECMA (międzynarodowa organizacja standaryzacyjna, skrót pochodzi od dawnej nazwy European Computer Manufacturers Association). Pewne zamieszanie panuje w nazewnictwie, gdyż używane są nazwy JavaScript, ECMAScript oraz (dla produktów firmy Microsoft) JScript. Nazwa ECMAScript określa standard języka. Z kolei JavaScript czy JScript to implementacje tego standardu występujące w konkretnych produktach, najczęściej przeglądarkach. Zależności między tymi systemami nazewnictwa, w pewnym uproszczeniu, obrazuje tabela A.1. Można przyjąć, że obecnie występujące na rynku wersje najpopularniejszych przeglądarek (FireFox 2 i 3, Internet Explorer 6, 7, 8, Opera 9, 10, Chrome) są zgodne z ECMAScript v3, czyli JavaScript 1.8 oraz JScript 5.5 i 5.6.
Tabela A.1. Zależności między wersjami JavaScriptu
ECMAScript |
JavaScript |
JScript |
Przeglądarki |
– |
1.0 |
1.1 |
Netscape 2.0, Internet Explorer 3.0 |
– |
1.1 |
2.0 |
Netscape 3.0, Internet Explorer 3.0 |
– |
1.2 |
- |
Netscape 4.0 – 4.05 |
v1 |
1.3 |
3.0 |
Netscape 4.06 – 4.7, Internet Explorer 4 |
– |
1.4 |
4.0 |
Brak implementacji w przeglądarkach |
– |
– |
5.0, 5.1 |
Internet Explorer 5.0, 5.1 |
v3 |
1.5 |
5.5 |
Netscape 6, Firefox 1, Internet Explorer 5.5 |
v3 |
1.6 |
5.6 |
Firefox 1.5, Internet Explorer 6 |
v3 |
1.7 |
5.7 |
Firefox 2, Internet Explorer 7 |
v3 |
1.8 |
5.8 |
Firefox 3, Internet Explorer 8 |
v4 |
– |
– |
Realizacja zarzucona, brak implementacji w przeglądarkach |
v5 (planowana) |
– |
– |
Dotychczas brak implementacji w przeglądarkach |
v6 (planowana, nazwa kodowa: harmony) |
– |
– |
Dotychczas brak implementacji w przeglądarkach |
Nie należy się jednak tą mnogością przejmować. W każdej współczesnej, popularnej przeglądarce mamy do czynienia z praktycznie tym samym językiem, który popularnie nazywamy JavaScriptem. Wszystkie podstawowe konstrukcje (a także większość nawet bardzo zaawansowanych) są takie same i zachowują się tak samo lub bardzo podobnie.