237 captures
01 May 2003 - 13 Jan 2026
Jul AUG Sep
15
2020 2021 2022
success
fail

About this capture

COLLECTED BY

Organization: Internet Archive

The Internet Archive discovers and captures web pages through many different web crawls. At any given time several distinct crawls are running, some for months, and some every day or longer. View the web archive through the Wayback Machine.

Collection: Wide Crawl Number 18

TIMESTAMPS

The Wayback Machine - http://web.archive.org/web/20210815225736/https://pl.wikipedia.org/wiki/JavaScript
 





JavaScript



Z Wikipedii, wolnej encyklopedii



Przejdź do nawigacji  Przejdź do wyszukiwania  
Ten artykuł dotyczy wariantu języka stosowanego na stronach WWW. Zobacz też: opis składni JavaScriptu.
JavaScript
Ilustracja
Logo języka
Pojawienie się 4 grudnia 1995; ponad 25 lat temu[1]
Paradygmat Język skryptowy wieloparadygmatowy (obiektowy, funkcyjny, imperatywny)
Typowanie dynamiczne, Duck typing
Implementacje SpiderMonkey, V8, JavaScriptCore, Chakra, Rhino, Carakan, KJS
Aktualna wersja stabilna ECMAScript 2022[2] (czerwiec 2021)
Twórca Brendan Eich
Platforma sprzętowa wieloplatformowy

JavaScript, w skrócie JSskryptowy język programowania, stworzony przez firmę Netscape, najczęściej stosowany na stronach internetowych. Twórcą JavaScriptu jest Brendan Eich[3]. 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[4].

Zastosowanie[edytuj | 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[5].

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+, GNOMEiOpenLDAP. Platforma Node.js umożliwia pisanie aplikacji wiersza poleceń oraz aplikacji serwerowych. Node.js używany jest także w środowisku Electron, który umożliwia pisanie aplikacji GUI. Język JavaScript używany jest także na urządzeniach internetu rzeczy, robotów czy układów takich jak Arduino poprzez bibliotekę Johnny-Five[6].

Historia[edytuj | edytuj kod]

 Osobny artykuł: ECMAScript.
Wersje standardu ECMAScript
Wersja Wydana Zmiany[7]
1 czerwiec 1997
2 czerwiec 1998 Głównie korekta redaktorska[a]
3 grudzień 1999 Wyrażenia regularne, obsługa wyjątków, nowe rodzaje pętli, literały tablic i obiektów
4 porzucona Klasy, jawna kontrola dostępu, alternatywne dla DOM wbudowane wsparcie dla XML[b]
5 grudzień 2009 Tryb „use strict”, obsługa JSON
6 – 2015[8] czerwiec 2015 Klasy, moduły, iterator for/of, kolekcje, tablice typowane, proxies (meta obiekty), wyjaśnia wiele niejednoznaczności z wersji 3
7 – 2016[9] czerwiec 2016 Operator potęgowy – **, Array.prototype.includes
8 – 2017[10] czerwiec 2017 funkcje async/await, String.prototype.padStart/padEnd, Object.values/entries
9 – 2018[11] czerwiec 2018 Asynchroniczne iteratory, Rest/Spread dla właściwości obiektów, nowe funkcje wyrażeń regularnych, funkcja finally dla obietnic
10 – 2019[4] czerwiec 2019 Dodanie metody spłaszczania tablic, zmiany w metodzie sortowania tablic i metodzie Object.fromEntries
11 – 2020[12] czerwiec 2020 Dodanie operatora null’owego scalania, operatora opcjonalnego dostępu, wprowadzono primityw BigInt
12 – 2021[2] czerwiec 2021 Możliwość używania separatorów liczbowych dla literałów liczbowych, możliwość sprawdzenia pustości lub braku określenia wartości zmiennej, funkcja any dla obietnic

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. Wersja ES4 została całkowicie porzucona przez przeglądarki internetowe, korzystał z niej jedynie język ActionScript dla platformy Flash. Od wersji ES5 przeglądarki na bieżąco implementują funkcje dodawane do standardu, często także, gdy są jeszcze propozycjami.

Dialekty[edytuj | 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[13]).

Wersje JavaScriptu, odmiany ECMAScriptu opracowywanej przez firmę Netscape.
Wersja Wydana Okoliczności wydania Ważniejsze rozszerzenia implementowanej specyfikacji[c][14] Pictogram voting support.svg
przeg.
Pictogram voting keep.svg
spec.
1.0 marzec 1996 NN 2.0 brak
1.1 sierpień 1996 Klasy typów podstawowych, konstruktory, prototypy NN 3.0 brak
1.2 czerwiec 1997 Klasa zdarzenia NN 4.0 brak[d]
1.3 październik 1998 NN 4.06 2
1.4 ? Dostępna jedynie po stronie serwera (np. Netscape Enterprise Server). 2
1.5 listopad 2000 Stałe, interfejs DOM poziom pierwszy i drugi M 0.6 3
1.6 listopad 2005 Mechanizm E4X Fx 1.5 3
1.7 październik 2006 Funkcje-iteratory, wielokrotne przypisania Fx 2.0 3
1.8 czerwiec 2008 domknięcia wyrażeń, wyrażenia generujące Fx 3.0 3
 Osobny artykuł: JScript.
Wersje JScriptu, odmiany ECMAScriptu opracowywanej przez firmę Microsoft.
Wersja Wydana Okoliczności wydania Ważniejsze rozszerzenia implementowanej specyfikacji[c] Pictogram voting support.svg
przeg.
Pictogram voting keep.svg
spec.
Pictogram voting neutral.svg
≈ JS
1.0 sierpień 1996 IE 3.0 brak 1.0
2.0 styczeń 1997 IE 3.02 brak 1.1
3.0 październik 1997 IE 4.0 1 1.3
4.0 ? Visual Studio 6.0 1 1.4
5.0 marzec 1999 Częściowa implementacja trzeciej wersji standardu (bez mechanizmu wyjątków), interfejsy XMLHttpRequest oraz DOM poziom pierwszy i drugi IE 5.0 2 1.5
5.1 sierpień 2000 IE 5.01 2
5.5 sierpień 2000 IE 5.5 3
5.6 październik 2001 IE 6.0 3
5.7 listopad 2006 IE 7.0 3
.NET 11 lipca 2000 Microsoft na bazie wstępnej wersji specyfikacji ECMAScript 4 stworzył JScript.NET. 4 ?

Java[edytuj | 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 | edytuj kod]

Interakcja[edytuj | 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 allilayers zostały uznane za przestarzałe i wsparcie dla nich zostało praktycznie wycofane.

Osadzanie[edytuj | edytuj kod]

W języku HTML za umieszczanie skryptów JS odpowiedzialny jest element <script> z opcjonalnymi argumentami type o wartości text/javascriptilanguage o wartości javascript.
<script type="text/javascript" language="JavaScript 1.5">
 alert(12 > 6);
</script>
Jeżeli kod znajduje się w dokumencie XHTML, w celu uniknięcia zinterpretowania niektórych operatorów jako elementów składni języka należy otoczyć skrypt sekcją CDATA lub zapisać je w postaci encji[15]. W XHTML nie można używać argumentu language w znaczeniu określenia wersji języka JS (atrybut, jeżeli jest użyty, powinien przyjąć dwuznakowe wartości opisane standardem ISO 639, np. EN, DE, PL).
<script type="text/javascript">
/* <![CDATA[ */
 alert(12 > 6);
/*]]> */</script>
Zewnętrzne skrypty dodawane są także przy użyciu powyższego znacznika, uwzględniając jedynie parametr src z nazwą pliku zawierającego kod skryptu. Typ MIME dla samodzielnych plików JavaScript to application/javascript lub przestarzały text/javascript[16].
<script type="text/javascript" src="code.js"></script>

Kompilatory[edytuj | 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 | edytuj kod]

Uwagi[edytuj | edytuj kod]

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

    1. Informacja prasowa – „Netscape and Sun announce JavaScript” (ang.).
  • a b ECMAScript® 2021 Language Specification (ang.). 262.ecma-international.org. [dostęp 2021-08-07].
  • Paul Krill: JavaScript founder Brendan Eich: WebAssembly is a game-changer (ang.). InfoWorld, 2016-03-10. [dostęp 2016-12-21].
  • a b Standard ECMA-262. www.ecma-international.org. [dostęp 2016-12-29].
  • Ringo.
  • Johnny-Five: The JavaScript Robotics & IoT Platform.
  • JavaScript 2.0: Evolving a Language for Evolving Systems.
  • ECMAScript 2015 Language Specification – ECMA-262 6th Edition, www.ecma-international.org [dostęp 2018-04-15] (ang.).
  • ECMAScript® 2016 Language Specification, www.ecma-international.org [dostęp 2018-04-15].
  • ECMAScript® 2017 Language Specification, www.ecma-international.org [dostęp 2018-04-15].
  • ECMAScript® 2018 Language Specification, www.ecma-international.org [dostęp 2019-06-19].
  • ECMAScript® 2020 Language Specification.
  • UnityScript’s long ride off into the sunset (ang.). [dostęp 2019-05-19].
  • Wersja 1.1 – Features added after version 1,
  • Osadzanie skryptów w XHTML. [dostęp 2007-05-07]. [zarchiwizowane z tego adresu (2007-04-20)].
  • B. Hoehrmann, Scripting Media Types, RFC 4329, IETF, kwiecień 2006, DOI10.17487/RFC4329, ISSN 2070-1721, OCLC 943595667 (ang.).
  • Linki zewnętrzne[edytuj | edytuj kod]

  • d
  • e
  • Języki programowania
    1GL
    2GL/
    Język drugiej generacji/
    Asembler
    3GL /
    Język trzeciej generacji
    wieloparadygmatowe
    proceduralne
    istrukturalne
    historyczne
    inne
    obiektowe
    funkcyjne
    edukacyjne
    4GL/
    Język czwartej generacji/
    Język dziedzinowy
    Języki zapytań do baz danych
    Generatory raportów / stron
    Przetwarzanie danych, analiza i raportowanie
    5GL/Logiczne
    Ezoteryczne
    Inne
  • BnF: 12549978q
  • SUDOC: 034781870
  • NKC: ph117651
  • BNE: XX542465
  • Źródło: „https://pl.wikipedia.org/w/index.php?title=JavaScript&oldid=64245064

    Kategorie: 
    JavaScript
    ECMAScript
    Obiektowe języki programowania
     





    Menu nawigacyjne


    Narzędzia osobiste  



    Nie jesteś zalogowany
    Dyskusja
    Edycje
    Utwórz konto
    Zaloguj się
     

    Przestrzenie nazw  



    Artykuł
    Dyskusja
     

    Warianty  





    Widok  



    Czytaj
    Edytuj
    Edytuj kod źródłowy
    Historia i autorzy
     

    Więcej  






     







    Nawigacja  



    Strona główna
    Losuj artykuł
    Kategorie artykułów
    Najlepsze artykuły
    Częste pytania (FAQ)
     

    Dla czytelników  



    O Wikipedii
    Zgłoś błąd
    Zgłoś błąd w pliku
    Kontakt
    Wspomóż Wikipedię
     

    Dla wikipedystów  



    Pierwsze kroki
    Portal wikipedystów
    Ogłoszenia
    Zasady
    Pomoc
    Ostatnie zmiany
     

    Narzędzia  



    Linkujące
    Zmiany w linkowanych
    Prześlij plik
    Strony specjalne
    Link do tej wersji
    Informacje o tej stronie
    Cytowanie tego artykułu
    Element Wikidanych
     

    Drukuj lub eksportuj  



    Utwórz książkę
    Pobierz jako PDF
    Wersja do druku
     

    W innych projektach  



    Wikimedia Commons
    Wikibooks
     

    W innych językach  



    Afrikaans
    Ænglisc
    العربية
    Aragonés
    Asturianu
    Azərbaycanca

    Bân-lâm-gú
    Беларуская
    Беларуская (тарашкевіца)
    Български
    Català
    Чӑвашла
    Čeština
    Dansk
    Deutsch
    Eesti
    Ελληνικά
    English
    Español
    Esperanto
    Euskara
    فارسی
    Français
    Galego
    /Hak-kâ-ngî

    Հայերեն
    ि
    Hrvatski
    Bahasa Indonesia
    Interlingua
    Íslenska
    Italiano
    עברית
    Jawa

    Қазақша
    Kiswahili
    Кыргызча
    Latviešu
    Lietuvių
    Lingua Franca Nova
    Lombard
    Magyar
    Македонски


    مصرى
    مازِرونی
    Bahasa Melayu
    Mìng-dĕ̤ng-nḡ
    Монгол

    Nederlands


    Nordfriisk
    Norsk bokmål
    Oʻzbekcha/ўзбекча
    پنجابی

    Português
    Română
    Русский
    Саха тыла
    Scots
    Shqip

    Simple English
    Slovenčina
    Slovenščina
    کوردی
    Српски / srpski
    Srpskohrvatski / српскохрватски
    Sunda
    Suomi
    Svenska
    Tagalog
    ி
    Taqbaylit
    Татарча/tatarça

    Tetun

    Тоҷикӣ
    Türkçe
    Türkmençe
     
    Українська
    اردو
    Vèneto
    Tiếng Vit



    Žemaitėška


    Edytuj linki
     



    Tę stronę ostatnio edytowano 7 sie 2021, 10:23.

    Tekst udostępniany na licencji Creative Commons: uznanie autorstwa, na tych samych warunkach, z możliwością obowiązywania dodatkowych ograniczeń. Zobacz szczegółowe informacje o warunkach korzystania.



    Polityka prywatności

    O Wikipedii

    Korzystasz z Wikipedii tylko na własną odpowiedzialność

    Wersja mobilna

    Dla deweloperów

    Statystyki

    Komunikat na temat ciasteczek



    Wikimedia Foundation
    Powered by MediaWiki