JavaScript
JavaScript jest to skryptowy język programowania stworzony przez firmę Netscape w 1995 roku. Początkowo język ten nazywał się LiveScript, jednak w wyniku porozumienia z firmą Sun zmieniono nazwę na obecną. Jest to wynikiem wielu nieporozumień, gdyż JavaScript nie ma wiele wspólnego z czystą Javą.
Najczęstszym zastosowaniem tego języka są strony WWW. Inspiracją do jego stworzenia była chęć do dynamicznego sterowania treścią dokumentu po stronie przeglądarki(klienta) bez konieczności przeładowania strony. Wyikiem tego możemy zwiększać funkcjonalność stron internetowych.
Przydład kodu JavaScript
Oto przykład wykorzystania JavaScript, nadajemy przycisku zdarzenie onClick, wywołuje ono funkcję alert która powoduje wyskoczenie okienka z komunikatem wpisanym jako argument.
Kod
<form>
<input type="button" value="Uwaga, uwaga !"
onClick="alert(' Widzisz mnie dzięki JavaScrpt !')")>
</form>
Wynik :
po kliknięciu w przycisk ukaże się okienko z komunikatem
DOM
JavaScript operuje na modelu DOM dokumentu (Document Object Mode) jest to sposób reprezentacji złożonych dokumentów XML i HTML w postaci modelu obiektowego. Dzięki temu modelowi zostaje odwzorowana cała struktura dokumentu,uzyskujemy w ten sposób dostęp do prawie wszystkich obiektów i właściwości obiektów
Przykładowo dokument XHTML postaci :
<head></head>
<body>
<h1></h1>
<p></p>
</body>
</html>
Przedsawić można za pomocą diagramu węzłów następującej postaci :
Diagram DOM
Do poszczególnej części dokumentu odwołujemy się za pomocą odpowiadającego jej węzła.
Za pomocą JavaScript możemy m.in :
- Pobrać dane elementy za pomocą ich ID, klasy, nazwy
- Dodawać nowe elementy, klasy, identyfikatoty
- Manipulować treścią
- Nadawać dynamicznie style
- Otwierać nowe okna
- Manipulować ciasteczkami
- Łączyć sie z serwerem w tle
Składnia - semantyka języka
Składnie języka JavaScript normuje standard EMCAScript
Semantyka
W języku JavaScript nie musimy kończyć instrukcji śrenikiem.
Komentarze
JavaScript oferuje dwa typy komentarzy - blokowy osadzony między /* a */ i liniowy, rozpoczynający się od // i trwający do końca lini.
Zmienne
Typ zmiennej ustalany jest automatycznie. Nazwa może składać się ze znaków alfanumerycznych wraz ze znakiem podkrleśnika (_) i pauzy (-). Zmienną deklarujemy poprzedzając jej nazwę modyfikatorem var, bądź podając samą nazwę. Zmienne mają zasięg całego skryptu.
zmienna = 5 // nadanie zmiennej wartości 5
var zmienna = 5 // to samo lecz z modyfikatorem var
// ten sposób jest bardziej przejrzysty
Instrukcje sterujące
W JavieScript mamy do wyboru dwie instrukcje warunkowe - if i switch.
Do naszej dyspozycji są również 4 pętle - for, do, do...while, for in. Pętle te mają zbliżoną składnie do tych w PHP, odpowiednikiem pętli foreach jest for in.
Obiekt
W JavaScript wszystko jest obiektem. Dostęp do właściwości jak i metod obiektu realizowany jest za pomocą tabicy asocjacyjej, realizowany jest za pomocą dwóch równoważnych zapisów.
nazwaObiektu["właściwość"] = 5 // dostęp do właściwości przez tablice asocjacyją
nazwaObiektu.właściwość = 5 // alternatywny sposób
nazwaObiekru["metoda"]() // wywołanie metody przez tablicę asocjacyjną
nazwaObiektu.metoda() // alternatywny sposób
Funkcje
Funkcje w JavaScript są również obiektami. Funkcję stworzyć możemy na trzy sposoby
// pierwszy sposób deklarowania funkcji
// podobny do sposobu znanego z PHP
function dodaj(a + b){
return a + b}
// drugi sposób deklarowania funkci
// ostatni argument to ciało funkcj
// pozostałe argumenty to nazwy argumentów
dodaj = new ("a","b" " return a + b ")
// trzeci sposób deklarowania funkcji
dodaj = function (a, b){
return a + b}
Tworzenie własnych obiektów
Obiekty tworzymy za pomocą funkcji, funkcja ta jest równocześnie konstruktorem. W ciele funkcji deklarujemy właściwości i metody, odwołując się do nich za pomocą this
function Obiekt(a,b){
this.a = a; // deklarowanie właściwości
this.b = b;
function _metoda(){ //
// ciało metody
}
this.metoda = _metoda // przypisanie metody
}
Dziedziczenie
Dziedziczenie realizowane jest poprzez prototypy
Obsługa wyjątków
Obsługe wyjątków realizuje się poprzez obiekt Exception
Wywołanie wyjątku następuje modyfiktatorem throw
Wyłapujemy wyjątki blokiem try...cach...finally