JavaScript


JavaScript w encyklopedii

Z Wikipedii, wolnej encyklopedii Przejdź do nawigacji Przejdź do wyszukiwania

JavaScript (w skrócie JS) – skryptowy język programowania, stworzony przez firmę Netscape, najczęściej stosowany na stronach internetowych. Twórcą JavaScriptu jest Brendan Eich[4]. W połowie lat 90. XX wieku organizacja ECMA wydała na podstawie JavaScriptu standard języka skryptowego o nazwie ECMAScript, aktualnie rozwijaniem tego standardu zajmuje się komisja TC39[5].

Spis treści

Zastosowanie | edytuj kod

Najczęściej spotykanym zastosowaniem języka JavaScript są strony internetowe. Skrypty te służą najczęściej do zapewnienia interakcji poprzez reagowanie na zdarzenia, walidacji danych wprowadzanych w formularzach lub tworzenia złożonych efektów wizualnych. Skrypty JavaScriptu uruchamiane przez strony internetowe mają znacznie ograniczony dostęp do komputera użytkownika. Po stronie serwera JavaScript może działać w postaci node.js lub Ringo[6].

W języku JavaScript można także pisać pełnoprawne aplikacje. Fundacja Mozilla udostępnia środowisko złożone z technologii takich jak XUL, XBL, XPCOM oraz JSLib. Umożliwiają one tworzenie korzystających z zasobów systemowych aplikacji o graficznym interfejsie użytkownika dopasowującym się do danej platformy. Przykładem aplikacji napisanych z użyciem JS i XUL może być klient IRC o nazwie ChatZilla, domyślnie dołączony do pakietu Mozilla. Microsoft udostępnia biblioteki umożliwiające tworzenie aplikacji JScript jako część środowiska Windows Scripting Host. Ponadto JScript.NET jest jednym z podstawowych języków środowiska .NET. Istnieje także stworzone przez IBM środowisko SashXB dla systemu Linux, które umożliwia tworzenie w języku JavaScript aplikacji korzystających z GTK+, GNOME i OpenLDAP.

Historia | edytuj kod

 Osobny artykuł: ECMAScript.

W 1996 r. organizacja ECMA rozpoczęła pracę nad specyfikacją języka JavaScript pozbawioną odniesień na temat interpretującego kod środowiska. Język opisany w standardzie ECMA-262 został nazwany ECMAScript. Od tego momentu nazwa JavaScript oznacza jedynie jeden z nadzbiorów języka ECMAScript. Pierwsza wersja standardu była bliska JavaScriptowi w wersji 1.1. Trzecia jako pierwsza rozszerzyła istniejące implementacje.

Dialekty | edytuj kod

Od czasu powstania JavaScriptu opracowywane były różne jego odmiany interpretowane za pomocą osobnych silników. Oprócz implementacji wprowadzonych do przeglądarek internetowych należy do nich ActionScript aplikacji Adobe Flash oraz UnityScript w silniku Unity (nie jest już on obsługiwany od wersji 2018.2[12]).

 Osobny artykuł: JScript.

Java | edytuj kod

Początkowo Netscape nazwała nowy język LiveScript. Nazwa została jednak szybko zmieniona na JavaScript wskutek biznesowych porozumień pomiędzy Netscape a firmą Sun Microsystems (współwłaścicielem znaku handlowego JavaScript jest Oracle Corporation, które przejęło Sun Microsystems w 2010 roku). Skrypty JavaScriptu oraz aplety Javy (mimo odrębności tych dwóch języków) mogą się wzajemnie komunikować dzięki dostępnej w przeglądarkach Netscape, Mozilla i Opera technologii LiveConnect. Często występują pewne nieporozumienia, lecz JavaScript i Java to mimo wszystko dwa różne języki.

JavaScript dla WWW | edytuj kod

Interakcja | edytuj kod

Wszystkie implementacje JavaScriptu dostępne w przeglądarkach internetowych dostarczają obiektów reprezentujących drzewo dokumentu. Mogą także umożliwiać tworzenie ciasteczek, manipulowanie oknami przeglądarki, wyświetlanie prostych okien dialogowych, pobieranie informacji o przeglądarce, zarządzanie jej pluginami oraz arkuszami stylów. Reagują także na zdarzenia wywoływane w interfejsie.

Podczas manipulowania zawartością dokumentu problem stanowił brak jego ustandaryzowanego modelu. W czwartym pokoleniu przeglądarek dostęp do niektórych elementów dokumentu w Netscape możliwy był przy użyciu kolekcji document.layers, za to w Internet Explorerze – document.all. Organizacja W3C opracowała jednak jednolity obiektowy model obsługiwany przez wszystkie współczesne przeglądarki (w tym Operę od wersji 6, Konquerora od wersji 3 oraz Safari). Tablice all i layers zostały uznane za przestarzałe i wsparcie dla nich zostało praktycznie wycofane.

Osadzanie | edytuj kod

Kompilatory | edytuj kod

Przeglądarki oraz język JavaScript stały się platformą do obsługi innych języków. Istnieją kompilatory, które konwertują pliki innego języka na JavaScript. Z najbardziej znanych można wymienić:

Istnieją także transpilatory nowszej wersji języka, na wersje starsze, które będą obsługiwane przez większą liczbę przeglądarek. Dzięki temu można korzystać z nowości, dodanych do języka zanim zostaną dodane przez przeglądarki. Przykładem takiego narzędzia jest Babel.

Zobacz też | edytuj kod

Uwagi | edytuj kod

  1. Przyczyną były prace nad ustanowieniem ECMAScript 2 normą ISO 16262
  2. Dotychczas opracowywane jako osobny standard ECMA-357
  3. a b Lub poprzedniej wersji implementacji, jeżeli specyfikacji ECMAScript jeszcze nie wydano
  4. Wersja ta została wydana, zanim ECMA ukończyła pierwszą specyfikację. Mimo to jest z nią częściowo zgodna

Przypisy | edytuj kod

  1. Informacja prasowa - "Netscape and Sun announce JavaScript" (ang.).
  2. Standard ECMA-262 | ECMA International
  3. ECMAScript Next support in Mozilla | Mozilla Developer Network
  4. Paul Krill: JavaScript founder Brendan Eich: WebAssembly is a game-changer (ang.). InfoWorld, 2016-03-10. [dostęp 2016-12-21].
  5. Standard ECMA-262. www.ecma-international.org. [dostęp 2016-12-29].
  6. Ringo
  7. JavaScript 2.0: Evolving a Language for Evolving Systems
  8. ECMAScript 2015 Language Specification – ECMA-262 6th Edition, www.ecma-international.org [dostęp 2018-04-15]  (ang.).
  9. ECMAScript® 2016 Language Specification, www.ecma-international.org [dostęp 2018-04-15] .
  10. ECMAScript® 2017 Language Specification, www.ecma-international.org [dostęp 2018-04-15] .
  11. ECMAScript® 2018 Language Specification, www.ecma-international.org [dostęp 2019-06-19] .
  12. UnityScript’s long ride off into the sunset (ang.). [dostęp 2019-05-19].
  13. Osadzanie skryptów w XHTML
  14. B.B. Hoehrmann B.B., Scripting Media Types, RFC 4329, IETF, kwiecień 2006, DOI10.17487/RFC4329, ISSN 2070-1721, OCLC 943595667  (ang.).

Linki zewnętrzne | edytuj kod

Kontrola autorytatywna (Język skryptowy):
Na podstawie artykułu: "JavaScript" pochodzącego z Wikipedii
OryginałEdytujHistoria i autorzy