JavaScript/Składniki JavaScriptu
Kod źródłowy aplikacji JavaScript jest często rozproszony w plikach JavaScript, HTML i CSS, a także w zdarzeniach i danych przepływających przez szereg nieintuicyjnych ścieżek.[1]
JavaScript w przeglądarce
[edytuj]JavaScript to nie tylko język programowania – pod tą nazwą kryje się również interfejs API i całe środowisko, w jakim JavaScript jest wykonywany. Sam język programowania, czyli ECMAScript, wyraża komputację do wykonania, zaś częściami odpowiedzialnymi za wejście i wyjście danych i interakcji to DOM i BOM.
Javascript | ||
---|---|---|
ECMAScript | Document Object Model | Browser Object Model |
ECMAScript
[edytuj]Rdzeniem JavaScriptu jest ECMAScript – obiektowy język skryptowy, powstały w wyniku standaryzacji języka JavaScript. Standaryzacja języka gwarantuje, że wszystkie typy, wartości, obiekty, właściwości, funkcje oraz składnie zdefiniowane w standardzie, wykorzystywane w skrypcie będą tak samo zachowywać się niezależnie od przeglądarki internetowej. Ponadto ustandaryzowane obiekty języka powinny zawsze zawierać co najmniej minimalny zestaw właściwości i funkcji.
Dodatkowo jest dopuszczalna implementacja obiektów, właściwości, funkcji, wartości i typów nie uwzględnionych w standardzie ECMA-262. Popularnymi implementacjami takich obiektów są: XMLHttpRequest i ActiveXObject.
Poniżej przedstawiona jest Tabelka zgodności z ECMAScriptem, zawierająca już historyczne dziś przeglądarki.
Przeglądarka Internetowa | Zgodność z ECMAScriptem |
---|---|
Netscape Navigator 2.0 - 4.05 | brak |
Netscape Navigator 4.06 - 4.79 | w wersji 1 |
Netscape Navigator ≥ 6.0 | w wersji 3 |
Mozilla ≥ 0.6 (SeaMonkey) | w wersji 3 |
Firefox | w wersji 3 |
Internet Explorer 3.0 - 4.0 | brak |
Internet Explorer 5.0 | w wersji 1 |
Internet Explorer ≥ 5.5 | w wersji 3 |
Opera 6.0 - 7.1 | w wersji 2 |
Opera ≥ 7.2 | w wersji 3 |
Safari ≥ 1.0 | w wersji 3 |
Konqueror ≥ 2.0 | w wersji 3 |
Obecnie wykorzystywane przeglądarki są zgodne z co najmniej 3. wersją standardu ECMA-262, a najnowsze z 5. wersją, obowiązującą od grudnia 2009 roku.
Zgodność z ECMAScriptem nie oznacza tego, że we wszystkich przeglądarkach internetowych tak samo zostały zaimplementowane funkcje specyficzne dla BOM oraz dla DOM. |
Model obiektowy dokumentu – DOM
[edytuj]Model DOM (Document Object Model) to interfejs API dla języków SGML, takich jak HTML i XML. Dzięki temu modelowi zostaje odwzorowana cała struktura dokumentu w formie umożliwiającej jej manipulację przez program.
Dla przykładu kod HTML:
<html>
<head></head>
<body>
<h1></h1>
<p></p>
</body>
</html>
można przedstawić jako diagram hierarchii węzłów modelu DOM.
Sposób odwoływania się do poszczególnych części dokumentu następuje poprzez przejście przez odpowiednie węzły modelu DOM.
W przygotowaniu: Może diagram bez napisów |
Model obiektowy przeglądarki – BOM
[edytuj]Model BOM (Browser Object Model) to interfejs API do manipulowania zachowaniem przeglądarki internetowej. Do modelu BOM można zaliczyć:
- Okna przeglądarki.
- Otwieranie nowych okien w przeglądarce.
- Manipulacja narzędziami i paskiem stanu przeglądarki.
- Przemieszczanie się po stronach internetowych.
- Okna dialogowe.
- Ekran.
- Rozdzielczość i pozycja elementów na ekranie monitora.
- Cookies.
- Manipulacja ciasteczkami przeglądarki.
- XMLHttpRequest - łączenie się przeglądarki z serwerem w tle.
- ActiveXObject - bardzo potężne narzędzie do tworzenia obiektów ActiveX.
Obiekt ActiveXObject występuje tylko w Internet Explorer, zamiast obiektu XMLHttpRequest. |
Zobacz też
[edytuj]