Perl, javascript

Języki skryptowe: Perl, javascript.

JavaScript

Czym jest JavaScript?

JavaScript jest językiem programowania dla Internetu. Pierwotnie był znany pod nazwą LiveScript, dopóki Sun Microsystems nie opublikował języka Java. Po wprowadzeniu Javy Netscape i Sun Microsystems porozumiały się i przemianowały LiveScript na JavaScript. Powszechnie przypuszcza się, że Java i JavaScript są tym samym albo czymś bardzo podobnym. Nie jest to prawda, jak możesz się przekonać z poniższego zestawienia.

JavaScript i Java: różnice

JavaScript:

Interpretowany przez klienta. Tworzy skrypty, które mogą być bezpośrednio wstawiane do stron HTML
Tworzy "aplety", które są wywoływane ze strony HTML, ale nie umieszczane w niej
Oparty na obiektach. Łatwy.

Java:

Wykonywany przez klienta
Tworzy "aplety", które są wywoływane ze strony HTML, ale nie umieszczane w niej.
Zorientowany obiektowo
Wymaga doświadczenia programistycznego

Krótko mówiąc, JavaScript jest łatwiejszy niż Java, ale Java ma więcej funkcji. JavaScript jest bardziej kompatybilny niż Java. W tej chwili Java wymaga 32-bitowego środowiska, gdy JavaScript może być wykonywany dosłownie w każdym systemie operacyjnym.

Koniecznie musisz poznać HTML, zanim spróbujesz nauczyć się JavaScript, ponieważ skrypty JavaScript muszą być zagnieżdżane w dokumentach HTML.

Pierwsze kroki w JavaScript?

Wstawienie skryptu jest bardzo proste. Znacznikiem otwierającym jest

<SCRIPT>

Za znacznikiem jest umieszczana treść skryptu, a za treścią wstawiasz znacznik zamykający

</SCRIPT>

Do znacznika <SCRIPT> możesz jeszcze coś dodać. Na przykład:
<SCRIPT LANGUAGE="JavaScript">
Pozwala skryptowi pracować w przeglądarce Netscape 2.0+.
<SCRIPT LANGUAGE="JavaScript1.1">
Pozwala skryptowi pracować w przeglądarce Netscape 3.0+, ale nie starszej.
<SCRIPT LANGUAGE="JavaScript1.2">
Pozwala skryptowi pracować w przeglądarce Netscape 4.0+ ale nie starszej.

Ukrywanie skryptu

Uwierz albo nie, ale ciągle istnieją przeglądarki, które nie obsługują JavaScript....
Aby pójść na kompromis z tymi przeglądarkami i nadać stronie normalny w nich wygląd, musisz ukryć skrypt. Aby ukryć skrypt, musisz dodać <!-- na początku skryptu, za znacznikiem
<SCRIPT> i //--> przed znacznikiem
</SCRIPT>
Jeśli nie ukryjesz skryptu, osoby nie dysponujące przeglądarką obsługującą JavaScript zobaczą na stronach "sieczkę".
Dla przykładu, skrypt:
<SCRIPT>document.write("Hi!")</SCRIPT>
Da w wyniku: Hi!
Ale jeśli zobaczy taką stronę ktoś mający słabszą przeglądarkę, ujrzy: <SCRIPT>document.write("Hi!") </SCRIPT> co może być szczególnie konfundujące,
gdy skrypt na stronie będzie miał duże rozmiary.
Jeśli nie rozumiesz document.write i innych takich rzeczy w skrypcie, nie martw się. Rozpocznę ich wyjaśnianie na następnych stronach.

Komentarze

Komentarze są bardzo ważne w skryptach, gdyż pomagają użytkownikom zrozumieć co się dzieje w skrypcie, nawet gdy nie potrafią programować. Są dwie podstawowe metody wstawiania komentarzy do skryptu. Metoda komentarza wielowierszowego i metoda komentarza jednowierszowego. Jeśli jest ci potrzebny komentarz o kilku wierszach, użyj znacznika /*, aby rozpocząć komentarz, a */, aby go zakończyć. Jak wspomniałem wyżej, jest jeszcze metoda komentarza jednowierszowego. Aby wstawić komentarz o jednym wierszu, użyj znacznika // i zredaguj swój komentarz. Niektóre osoby lubią wstawiać znacznik // zarówno na początku, jak i na końcu komentarza jednowierszowego. Nie ma w tym nic szkodliwego. W żaden sposób nie wpływa to na działanie skryptu.

Funkcje

Zasadniczą część skryptu stanowią funkcje. Są to w zasadzie małe 'skrypty wewnątrz skryptów', które wykonują pewne konkretne zadania. Funkcje powinny być zawsze definiowane między znacznikami <HEAD> i </HEAD>. Pozwala to na załadowanie ich na samym początku, aby dowolny skrypt na stronie mógł rozpocząć pracę,
gdy użytkownik zacznie przeglądać stronę. Funkcje są definiowane przez określenie ich nazwy.
Dla przykładu, nazwijmy funkcję Addit. Gdy już zdecydujesz się na nazwę, musisz napisać ów 'skrypt wewnątrz skryptu'. Funkcja w naszym przykładzie będzie dodawać 15 do liczby, która jest używana przez funkcję.
Oto ta funkcja:

function Addit(i) { return(i + "+15 is " + (i+15)) }

"i" wewnątrz nawiasów () reprezentuje liczbę użytą, gdy wywołujesz funkcję. To, co funkcja ma zrobić po wywołaniu, jest zdefiniowane między nawiasami { i }. Jeśli uruchomisz to jednak jako JavaScript, nic się nie stanie. Dzieje się tak dlatego, że funkcja nie została jeszcze wywołana. Aby wywołać funkcję, musisz umieścić gdzieś na stronie Addit(5), w ramach znaczników <SCRIPT> i </SCRIPT>
Liczba pięć może być zmieniona na dowolną inną, którą chcesz dodać do 15. A oto skrypt z działającą funkcją:

5+15 daje 20

JavaScript rozróżnia wielkość liter. Addit() nie jest tym samym co addit(), a document.write() nie jest tym samym co Document.WRITE().

Kombinowanie obiektów, własności, metod itd.

Aby uzyskać dostęp do własności obiektów, metod czy czegokolwiek innego, co się z tym wiąże,
musisz wstawiać kropkę '.' między obiekt i to, co definiujesz.
Na przykład: document jest obiektem, ale sam w sobie jest bezużyteczny.
Gdybyś chciał użyć document, aby wypisać coś na stronie, musiałbyś go połączyć z metodą write().
Po połączeniu wygląda to następująco: document.write().
Gdy dokonasz połączenia, możesz go użyć do wyświetlania na stronie tekstu, grafiki etc.
Kilka wierszy JavaScript może być łączonych w jeden wiersz, podobnie jak w innych językach programowania. Użyj wtedy symbolu średnika ; po każdym wierszu,
aby poszczególne wiersze były poprawnie interpretowane.
A teraz, gdy już poznałeś podstawy, przejdĽ do następnych stron.


Obiekty w JavaScript

Teraz, gdy już poznałeś podstawy JavaScript, musisz się nauczyć budowania "klocków" JavaScript, obiektów. Poniżej jest zamieszczona lista wszystkich obiektów JavaScript - kliknij na nazwie, aby przejść do odpowiadającego jej fragmentu strony. Obiektom towarzyszą własności i metody. Jeśli obiekt dysponuje wieloma własnościami i metodami, podam krótki opis każdej z nich; w przeciwnym razie będą one tylko wymienione. Jeśli potrzebujesz bardziej szczegółowego opisu własności lub metody, przejdĽ do strony własności lub metody. Mam nadzieję, że w którymś momencie podłączę własności i metody bezpośrednio do ich bardziej zaawansowanego opisu, ale w tej chwili byłoby to zbyt kłopotliwe ze względu na dużą liczbę odsyłaczy.

anchor
checkbox
Date
document
elements array
form
frame
hidden
history
link
location
Math
navigator
password
radio
reset
select
string
submit
text
textarea
window



Obiekt anchor

Kotwica (anchor) to obszar w dokumencie, do którego jest przenoszony czytelnik po
kliknięciu na innym odsyłaczu. Przykładem kotwicy może być odsyłacz, którego użyłeś
na górze tej strony, aby skoczyć do tego miejsca, albo odsyłacz, którego użyjesz na dole strony,
aby skoczyć do jej początku. Składnia: <A NAME="anchorname"> a odsyłacz do tej części
strony ma postać <A HREF="#anchorname">
Własności: Brak
Metody: Brak

Do początku

Obiekt button

Obiekt button (przycisk) jest używany w formularzach do zdefiniowania przycisku. Name określa nazwę przycisku, value określa tekst widoczny na przycisku. Przyciski muszą być zdefiniowane w ramachznaczników <FORM> i </FORM>.
Przycisk wygląda następująco:

Składnia: <INPUT TYPE="button" name="Name" value="value"> Własności: name i value
Metody: click

Do początku


Obiekt checkbox

Checkbox jest jednym z tych kwadratowych okienek, które zaznaczasz kliknięciem, a które, jestem pewien, każdy już widział. Checkbox musi być zdefiniowany w ramach znaczników <FORM> i </FORM>.
Checkbox wygląda następująco:

Składnia: <INPUT TYPE="checkbox" name="Name" value="value"> do kodu można także dodać 'checked', aby okienko było domyślnie zaznaczone po załadowaniu strony. Własności: checked, defaultChecked, name i value
Metody: click

Do początku


Obiekt Date

Obiekt date jest bardzo użyteczną i wyrafinowaną funkcją. Pozwala ci pracować z datą i czasem - latami, dniami, godzinami, minutami, sekundami etc. JavaScript przechowuje daty jako liczby milisekund, które upłynęły od 1 stycznia 19700, g. 00:00:00.
Składnia:
1. variable = new Date()
2. variable = new Date(hours, minutes, seconds)
3. variable = new Date(year, month, day)

W pierwszym przykładzie jest zwracana bieżąca data
W drugim przykładzie jest zwracana bieżąca godzina, minuta i sekunda
W trzecim przykładzie jest zwracany bieżący rok, niesiąc i dzień
Własności: Brak
Metody:
getDate() - Wyświetla dzień miesiąca dla ustalonej daty (liczba całkowita z zakresu 1-31)
getDay() - Wyświetla dzień tygodnia dla ustalonej daty (liczba całkowita, od 0=Niedziela do 6=Sobota)
getHours() - Wyświetla godzinę dla ustalonej daty (liczba całkowita z zakresu 0-23)
getMinutes() - Wyświetla minuty dla ustalonej daty (liczba całkowita z zakresu 0-59)
getMonth() - Wyświetla miesiąc dla ustalonej daty (liczba całkowita z zakresu 0=Styczeń - 11=Grudzień)
getSeconds() - Wyświetla sekundy dla bieżącego czasu (liczba całkowita z zakresu 0-59)
getTime() - Pokazuje ustaloną datę z użyciem liczb (liczba milisekund od 1 stycznia 1970 00:00:00)
getTimezoneOffset() - Wyświetla w minutach różnicę czasu między czasem lokalnym i czasem Greenwich (GMT)
getYear() - Wyświetla rok dla ustalonej daty (liczba dwucyfrowa)
parse() - Wyświetla liczbę milisekund od 1/1/70 00:00:00 do podanej daty
setDate() - Ustawia dzień miesiąca dla aktualnego obiektu date
setHours() - Ustawia godzinę dla aktualnego obiektu date
setMinutes() - Ustawia minuty dla aktualnego obiektu date
setMonth() - Ustawia miesiąc dla aktualnego obiektu date
SetSeconds() - Ustawia liczbę sekund dla aktualnego obiektu date
setTime() - Ustawia datę i godzinę dla aktualnego obiektu date, w milisekundach od 1/1/70 00:00:00
setYear() - Ustawia rok dla aktualnego obiektu date (rok jest liczbą całkowitą większą od 1900)
toGMTString() - Zwraca aktualną datę i czas z użyciem G.M.T. (Greenwich Mean Time)
toLocaleString() - Zwraca aktualną datę i godzinę z użyciem bieżącej lokalizacji użytkownika
UTC() - Wyświetla liczbę milisekund od 1/1/70 00:00:00 z użyciem G.M.T.

Do początku


Obiekt document

Document jest chyba najważniejszą funkcją JavaScript. Zawiera on informacje o bieżącej stronie i dostarcza sposobów wyświetlania strony HTML.
Składnia: document.property lub document.method, gdzie property i method są elementem z poniższej listy.
Własności:
alinkColor - określa kolor aktywnego odsyłacza (active link color)
anchors - tablica odzwierciedlająca wszystkie kotwice dokumentu
bgColor - określa kolor tła
cookie - określa wartości cookies dla danego dokumentu
fgColor - określa kolor tekstu
forms - tablica odzwierciedlająca wszystkie formularze w dokumencie
lastModified - informuje, kiedy dokument był ostatnio modyfikowany
linkColor - określa kolor odsyłaczy
links - tablica odzwierciedlająca wszystkie odsyłacze w dokumencie
location - wyświetla bieżący adres URL dokumentu
referrer - wyświetla adres URL poprzednio odwiedzanego dokumentu
title - wyświetla zawartość znacznika <TITLE>
vlinkColor - określa kolor odsyłacza do odwiedzonej już wcześniej strony (visited link color)
Metody: clear, close, open, write i writeln

Do początku


Obiekt tablica elementów

Tworzy tablicę elementów wchodzących w skład formularza, jak przyciski, pola itd., w kolejności występowania. Pamiętaj, że pierwszy obiekt w formularzu ma zawsze numer 0, a nie numer 1.
Składnia: formname.elements[i] gdzie i numerem obiektu, oraz formname.elements.length
Własności: length
Metody: Brak

Do początku


Obiekt form

Obiekt form jest używany do tworzenia formularzy. Mogą one zawierać pola, obszary tekstowe, przyciski, pola zaznaczane itd. Wszystkie są używane do podawania danych.
Składnia:
<FORM NAME="name" TARGET="target" ACTION="file" METHOD="POST/GET" ENCTYPE="encodingtype">
NAME definiuje nazwę formularza
TARGET definiuje okno, do którego są przesyłane wyniki
ACTION definiuje, dokąd powinny być przesłane odpowiedzi do dalszego przetwarzania. Może to być skrypt CGI, adres pocztowy czy coś innego.
METHOD to albo POST albo GET. Definiuje, jak odpowiedzi są przesyłane do serwera.
ENCTYPE definiuje typ kodowania MIME dla formularza.
Własności: action, elements, encoding, length, method, target, button, checkbox, hidden, password, radio, reset, select, submit, text i textarea
Metody: submit

Do początku


Obiekt frame

Obiekt frame jest używany do definiowania ramek. Ramki stają się coraz bardziej popularne w Internecie, oferując ulepszone metody nawigacji i szybsze ładowanie.
Składnia:
<FRAMESET ROWS="ROWS" COLS="COLS">
<FRAME SRC="file" NAME="name">
</FRAMESET>
COLS określa szerokość kolumn. Mogą to być wartości absolutne rozdzielone przecinkiem lub procent szerokości ekranu. ROWS określa wysokość wierszy. Mogą to być wartości absolutne rozdzielone przecinkiem lub procent wysokości ekranu. Dla każdej ramki musisz określić plik i nazwę, korzystając ze znacznika <FRAME>. SRC mówi przeglądarce, jaka jest nazwa pliku, który ma być wyświetlony w ramce. NAME nadaje ramce nazwę.
Własności:
frames - Tablica obiektów reprezentujących ramki w oknie, ułożonych z kolejności występowania w kodzie Ľródłowym
name - Wyświetla nazwę określonego obiektu
length - Wyświetla liczbę ramek potomnych dla danej ramki
parent - Synonim dla okna lub ramki zawierającej dany układ ramek
self - Synonim dla bieżącej ramki lub okna
window - The top level for an object
Metody: clearTimeout i setTimeout

Do początku


Obiekt hidden

Obiekt hidden jest używany w formularzach do ukrywania przed użytkownikiem pola input. Pole ciągle tam jest, ale nie może być zobaczone i nie ma do niego dostępu. Wygodne przy dodawaniu do formularzy predefiniowanych danych. Jak wszystkie obiekty związane z formularzem, pole hidden musi być definiowane w ramach znaczników <FORM> i </FORM>.
Składnia: <INPUT TYPE="hidden" NAME="name" VALUE="value"> gdzie NAME jest nazwą pola, a VALUE reprezentuje dane w polu.
Własności: name i value
Metody: Brak

Do początku


Obiekt history

Obiekt history zawiera informację o bieżącej sesji użytkowania przeglądarki. Dane składają się z pewnej liczby odwiedzonych witryn, ich adresów URL i ich nazw. Obiekt jest szczególnie przydatny przy tworzeniu skryptowych systemów nawigacyjnych. Składnia: history.property lub history.method, gdzie property lub method jest jednym z poniższych elementów.
Własności: length
Metody: back, forward i go

Do początku


Obiekt link

Obiekt link tworzy odsyłacze HTML za pomocą JavaScript. Składnia: <HREF="location" NAME="name" TARGET="target">, gdzie HREF jest adresem URL pliku, który mamy wczytać o kliknięciu. NAME to nazwa odsyłacza, a TARGET to obszar, do którego ma być wczytany plik. TARGET jest stosowany tylko wtedy, gdy używamy odsyłaczy do ramek lub odrębnych okien.
Własności:
hash - definiuje nazwę kotwicy w adresie URL
host - definiuje fragment adresu URL - hostname:port
hostname - zwraca adres IP hosta
href - zwraca cały adres URL
pathname - zwraca fragment dotyczący ścieżki dostępu adresu URL
port - definiuje port komunikacyjny, używany przez serwer
protocol - określa początek adresu URL, łącznie z dwukropkiem
search - pokazuje tekst zapytania po symbolu ? w adresie URL
target - mówi, w którym miejscu wyświetlić zawartość strony adresowanej przez odsyłacz
Metody: Brak

Do początku


Obiekt location

Obiekt location przechowuje informację o bieżącym adresie URL. Każda własność obiektu należy do odrębnej części adresu URL.
Składnia: window.location.property, gdzie window jest bieżącym oknem lub oknem, które or the window you want to use it with, a property z poniższej listy.
Własności:
hash - odwołuje się do kotwicy
host - ustala nazwę hosta
hostname - wyświetla nazwę hosta lub adres IP bieżącego hosta
href - określa cały adres UR
pathname - odnosi się do ścieżki dostępu w adresie URL
port - określa port komunikacyjny serwera. Zazwyczaj 80
protocol - określa nazwę protokołu dla transmisji danych (http, ftp, etc.)
search - pokazuje tekst zapytania po znaku ? w adresie URL
Metody: Brak

Do początku


Obiekt Math

Obiekt math przechowuje wartości matematyczne, gromadzone jako własności i metody. Są tutaj przechowywane pewne funkcje matematyczne, takie jak wartość Pi. Składnia: Math.property lub Math.method, gdzie property lub method jest jednym z podanych niżej elementów.
Własności:
E - Zwraca stałą Eulera, która wynosi ok. 2.718
LN2 - Zwraca logarytm dwóch, tj. ok. 0.693
LN10 - Zwraca logarytm z dziesięciu, tj. ok. 2.302
LOG2E - Zwraca logarytm o podstawie 2 z liczby E, czyli ok. 1.442
LOG10E - Zwraca logarytm o podstawie 10 z E, czyli ok. 0.434
PI - Zwraca wartość liczby Pi, czyli ok. 3.14159
SQRT1_2 - Zwraca pierwiastek kwadratowy z 0.5, czyli ok. 0.707
SQRT2 - Zwraca pierwiastek kwadratowy z 2, czyli ok. 1.414
Metody:
abs(liczba) - Zwraca wartość absolutną liczby
acos(liczba) - Zwraca arcus cosinus z liczby (podanej w radianach)
asin(liczba) - Zwraca arcus sinus z liczby (podanej w radianach)
atan(liczba) - Zwraca arcus tangens z liczby (podanej w radianach)
ceil(liczba) - Zwraca najmniejszą liczbę całkowitą, większą lub równą podanej liczbie
cos(liczba) - Zwraca cosinus liczby (podanej w radianach)
exp(liczba) - Zwraca wartość E podniesionej do potęgi wyrażonej podanym argumentem
floor(liczba) - Zwraca największą liczbę całkowitą mniejszą lub równą podanej liczbie
log(liczba) - Zwraca logarytm naturalny liczby
max(liczba1,liczba2) - Zwraca większą z dwóch liczb
min(liczba1,liczba2) - Zwraca mniejszą z dwóch liczb
pow(liczba1,liczba2) - Zwraca wartość liczby1 podniesionej do potęgi liczby2
random() - Zwraca wartość pseudolosową z przedziału 0-1
round(liczba) - Zwraca zaokrąglenie danej liczby do najbliższej liczby całkowitej
sin(liczba) - Zwraca sinus liczby (podanej w radianach)
sqrt(liczba) - Zwraca pierwiaastek kwadratowy liczby
tan(liczba) - Zwraca tangens liczby (podanej w radianach)

Do początku


Obiekt navigator

Czy kiedykolwiek chciałeś zaskoczyć kogoś i skłonić go, żeby myślał, że wszystko o nim wiesz? Jeśli wykorzystujesz w tym celu JavaScript, zapewne będziesz się musiał posłużyć obiektem navigator. Obiekt zawiera całą informację o przeglądarce, za pomocą której użytkownik przegląda twoje strony.
Składnia: navigator.property, gdzie property jest elementem z pniższej listy.
Własności:
appCodeName - Zwraca nazwę kodową przeglądarki (Mozilla)
appName - Zwraca nazwę przeglądarki
appVersion - Zwraca numer wersji przeglądarki
userAgent - Zwraca pełną nazwę przeglądarki (łącznie appCodeName i appVersion)
Metody: Brak

Do początku


Obiekt password

Obiekt password (hasło) tworzy pole tekstowe, w którym gwiazdki zastępują cały wprowadzany tam tekst, chowając jego treść przed ciekawskimi. Pole musi być zdefiniowane w ramach znaczników <FORM> i </FORM>. Pole hasła wygląda mniej więcej tak:

Składnia: <INPUT TYPE="PASSWORD" NAME="NAME" VALUE="VALUE" SIZE="SIZE">
NAME określa nazwę pola.
VALUE określa tekst wyświetlany w polu po załadowaniu strony.
SIZE określa szerokość pola (ile znaków może wprowadzić użytkownik, zanim zawartość będzie przewijana).
W JavaScript, chcąc skorzystać z własności lub metod, użyj:
password.method lub password.property, gdzie password nazwą pola hasła,
zaś method lub property elementem z poniższej listy.
Własności:
defaultValue - Ustawia domyślną wartość VALUE
name - Ustawia parametr NAME
value - Zwraca bieżącą wartość pola hasła
Metody:
blur - Usuwa fokus z pola
focus - Umieszcza fokus w polu
select - Zaznacza zawartość pola

Do początku


Obiekt radio

Już je widywaliśmy... To te okrągłe przyciski w formularzach, na których klikasz, ale nigdy nie możesz wybrać więcej niż jeden. Przyciski radiowe, jak wszytkie inne obiekty w formularzach, muszą być definiowane w ramach znaczników <FORM> i </FORM>. Przyciski radiowe wyglądają tak:

Składnia: <INPUT TYPE="radio" NAME="Name" VALUE="Value" {CHECKED}>, gdzie NAME jest nazwą przycisku, VALUE jest jego wartością, a CHECKED może być częścią kodu, ale nie musi. Gdy wstawisz CHECKED, po załadowaniu formularza przycisk jest od razu zaznaczony. W innym przypadku użytkownik musi na nim kliknąć. Jeśli chcesz mieć dostęp do własności i metod, skorzystaj z radio.property lub radio.method, gdzie property lub method jest elementem z poniższej listy.
Własności:
checked - Zaznacza przycisk
defaultChecked - Ustawia domyślne zaznaczenie przycisku po załadowaniu strony
length - Określa liczbę przycisków w obiekcie JavaScript
name - Określa nazwę przycisku
value - Określa wartość przycisku
Metody: click

Do początku


Obiekt reset

Jeśli ktoś nie utworzy przycisku reset w formularzu, nie masz go ochoty natłuc? Ja wiem, że tak. Przycisk reset pozwala wyczyścić cały formularz za pomocą kliknięcia na jednym przycisku. Przycisk reset, jak wszystkie inne obiekty formularza, jest definiowany w ramach znaczników <FORM> i </FORM>. Przycisk Reset wygląda w taki sposób (treść na przycisku można zmienić)

Składnia: <INPUT TYPE="RESET" NAME="NAME" VALUE="VALUE">, gdzie NAME jest nazwą przycisku, a VALUE jest tekstem na przycisku. Aby uzyskać dostęp do własności i metod, użyj reset.property lub reset.method, gdzie reset jest nazwą przycisku, a property lub method pochodzą z poniższej listy.
Własności:
name - Określa nazwę przycisku
value - Określa wartość przycisku
Metody: click

Do początku


Obiekt select

Wypełniałeś kiedyś ankietę online i byłeś pytany, z jakiego pochodzisz kraju? Prawdopodobnie musiałeś wybrać coś z predefiniowanej listy w rozwijanym menu, prawda? Jest to pole wyboru albo, jak mówią niektórzy, tablica. Tablica wyboru musi być umieszczona w ramach znaczników <FORM> i </FORM>. Wygląda to na przykład w ten sposób:

Tablica wyboru: ABCD Przewijalna lista: ABCD
Składnia:
<SELECT NAME="NAME" SIZE="SIZE" {MULTIPLE}> <OPTION VALUE="option" {SELECTED}> Text </SELECT>
Gdzie NAME jest nazwą tablicy wyboru, SIZE ustawia liczbę opcji wyświetlanych zanim będziemy przewijać listę, MULTIPLE, jeśli dodamy do kodu, tworzy z tablicy raczej listę przewijalną niż tablicę wyboru.
<OPTION VALUE="option" {SELECTED}> określa jedną opcję. Aby dodać więcej opcji (co jest przecież celem menu rozwijanego), musisz utworzyć oddzielne znaczniki <OPTION> dla każdej opcji.
W znaczniku <OPTION> VALUE jest wartością opcji, SELECTED,
jeśli dodamy, zaznacza domyślnie tę opcję, a Text jest tekstem, który ma być wyświetlany w menu rozwijanym. Aby uzyskać dostęp do własności i metod, użyj name.property lub name.method, gdzie property lub method pochodzi z poniższej listy.
Własności:
length - Wyznacza liczbę opcji na liście
name - Określa nazwę listy
options - Tworzy tablicę obiektów odpowiadających opcjom na liście
selectedIndex - Określa indeks aktualnie wybranej opcji
Metody: blur i focus

Do początku


Obiekt string

String jest ciągiem znaków przechowywanych w zmiennej. Tekst jest zamknięty między ' ' lub " ". Przykładem stringu może być 'JavaScript' lub "JavaScript".
Składnia: string.property lub string.method, gdzie string jest nazwą ciągu znaków, a property lub method pochodzą z poniższej listy.
Własności: length
Metody:
anchor(nazwa) - Czyni ze stringu kotwicę
big() - Nadaje atrybut big
blink() - Nadaje atrybut blink
bold() - Nadaje atrybut bold
charAt(indeks) - pobiera znak z pewnej pozycji stringu
fixed() - Wyświetla string za pomocą atrybutu TT
fontcolor(kolor) - Określa kolor stringu
fontsize(wielkość) - Określa wielkość czcionki w stringu
indexOf(łańcuch,indeks) - Szuka pierwszego wystąpienia poszukiwanej wartości w stringu
italics() - Nadaje strybut italics
lastIndexOf(łańcuch,indeks) - Szuka ostatniego wystąpienia poszukiwanej wartości w stringu
link(href) - Czyni ze stringu odsyłacz
small() - Nadaje atrybut small
strike() - Nadaje atrybut strike through (linia przekreślająca ciąg)
sub() - Nadaje atrybut subscript
substring(indeksPoczątku,indeksKońca) - Zwraca łańcuch rozpoczynający się od pewnego znaku
i kończący na innym znaku
sup() - Nadaje atrybut superscript
toLowerCase() - Nadaje atrybut lower case
toUpperCase() - Nadaje atrybut upper case

Do początku


Obiekt submit

Obiekt submit tworzy przycisk submit (wyślij) w formularzu, i musi być zdefiniowany
w ramach znaczników <FORM> i </FORM>.
Aby uzyskać dostęp do własności i metod, użyj submit.property lub submit.method,
gdzie property lub method pochodzi z poniższej listy.
Przycisk submit wygląda następująco:

Składnia:
<INPUT TYPE="SUBMIT" NAME="NAME" VALUE="Text">
NAME jest nazwą przycisku, a VALUE jest tekstem wyświetlanym na przycisku.
Własności: name i value
Metody: click

Do początku


Obiekt text

Obiekt text tworzy pole tekstowe, w którym można coś wpisywać.
Pola tekstowe mają żywotne znaczenie dla formularzy.
Obiekt text musi być zdefiniowany w ramach znaczników <FORM> i </FORM>.
Pole tekstowe wygląda następująco:

Składnia:
<INPUT TYPE="text" NAME="name" VALUE="value" SIZE="size">
NAME nazwą pola, VALUE jest predefiniowanym tekstem,
który jest wyświetlany w polu po załadowaniu strony. Jeśli nie chcesz predefiniowanego tekstu,
nie podawaj wartości VALUE. SIZE jest liczbą całkowitą i reprezentuje szerokość pola (lub liczbę znaków).
Aby uzyskać dostęp do metod i własności, użyj text.method lub text.property,
gdzie property lub method pochodzi z poniższej listy.
Własności: defaultValue, name i value
Metody: focus, blur i select

Do początku


Obiekt textarea

Obiekt textarea (obszar tekstowy) działa wewnątrz znaczników <FORM> i </FORM>
i pozwala użytkownikowi wprowadzić do formularza kilka wierszy tekstu.
Aby uzyskać dostęp do metod i własności, użyj textarea.method lub textarea.property,
gdzie property lub method pochodzi z poniższej listy.
Obszar tekstowy:
To jest obszar tekstowy.
Pozwala on wprowadzić więcej niż jeden wiersz tekstu i jest bardziej konfigurowalny.
Składnia:
<TEXTAREA NAME="name" ROWS=rows COLS=cols
WRAP="off/virtual/physical">Text</TEXTAREA>
NAME jest nazwą obszaru tekstowego, ROWS określa liczbę wyświetlanych wierszy obszaru.
COLS określa liczbę wyświetlanych znaków na szerokość.
WRAP ma wartość off, virtual lub physical. Off wyłącza zawijanie tekstu, virtual zawija tekst,
ale wysyła go w postaci niezawiniętej, natomiast physical zawija tekst i wysyła go w takiej postaci.
Własności: defaultValue, name i select
Metody: focus, blur i select

Do początku


Obiekt window

Obiekt window jest najwyższym w hierarchii obiektem dla każdego obiektu location,
history lub document.
Składnia: window = window.open("URL", "NAME" {,"Features"})
window jwest nazwą okna, URL jest adresem URL strony, którą chcesz otworzyć,
NAME jest nazwą okna, a Features określa wielkość okna etc.
Jest wiele sposobów dostępu do własności i metod okna. Oto ich lista:
methodName(specifications)
parent.property
parent.method(specifications)
propertyName
self.property
self.method(specifications)
top.property
top.method(specifications)
window.property
window.method(specifications)
var.property
var.method(specifications)

property jest jedną z własności wymienionych poniżej, method jedną z podanych niżej metod,
a var jest nazwą okna.
Własności:
defaultStatus - Domyślna wiadomość wyświetlana w pasku statusu
document - Dotyczy bieżącego dokumentu
frames - Tablica zawierająca listę wszystkich ramek w oknie
frame - Przewijalne okno używane dla tablicy
length - Liczba ramek w bieżącym oknie
location - Pełny adres URL bieżącego dokumentu
name - Nazwa okna
parent - Synonim dla okna, którego szkielet ramek (frameset) zawiera bieżącą ramkę
self - Dotyczy bieżącego okna
status - Wyświetla wiadomość w pasku statusu
top - Dotyczy okna położonego najwyżej w hierarchii (głównego)
window - Dotyczy bieżącego okna
Metody:
alert - Tworzy okienko dialogowe z alertem
close - Zamyka dokument
confirm - Tworzy okienko dialogowe z potwierdzeniem - z przyciskami OK i Cancel
open - Otwiera nowe okno
prompt - Tworzy okienko dialogowe zachęcające do wprowadzenia jakichś danych
setTimeout - Wykonuje skrypt JavaScript po upłynięciu podanej liczby milisekund
clearTimeout - Przerywa polecenie setTimeout

Perl

 

Co to jest Perl?


Perl to z założenia praktyczny, interpretowany język programowania
przeznaczony przede wszystkim do wykonywania różnych zadań systemowych m.in.
przeszukiwania plików tekstowych, pobierania z nich informacji i generowania
komunikatów na ich podstawie. świetnie nadaje się do pisania skryptów CGI.
Jego autorem jest Larry Wall
wspomagany oczywiście przez ogromną liczbę innych programistów.
Perl jest kompletny, stosunkowo łatwy w użyciu oraz wydajny, przypłacając to
może nieco elegancją. Posiada wiele cech języka C, jak również sed, awk i
sh. Programujący w w/w językach nie powinni mieć większych problemów z
opanowaniem Perla. Kompilatory Perla są bezpłatne i dostępne dla wielu
systemów operacyjnych. Większość skryptów jest przenośna.
Archiwum CPAN

zawiera wiele cennych materiałów dotyczących Perla, takich jak kompilatory,
skrypty, biblioteki.

Pierwsza linijka

Pierwsza linijka kodu w języku Perl ma specjalne znaczenie,
aczkolwiek nie jest niezbędna do działania programu.
Powinna wyglądać następująco:

#!/usr/bin/perl

ścieżka /usr/bin/perl zależy od konkretnego systemu i należy ją odpowiednio
zmodyfikować, tak aby wskazywała interpreter. Zasadniczo, podobnie jak w
zwykłych skryptach pisanych np. w sh,
linie rozpoczynające się od znaku "#" są ignorowane
przez kompilator i pozwalają na umieszczanie własnych
komentarzy wewnątrz programu.

Pierwszy program.

Oto najprostszy program w Perlu wypisujący na ekranie tekst:

#!/usr/bin/perl

print 'Hello World.';

Należy pamiętać o tym, że każdą operację oddzielamy od następnej
za pomocą średnika.

Uruchamianie programu.

Aby uruchomić nasz program, należy zapisać go w zwykłym pliku tekstowym.
Możemy użyć do tego celu jakiegokolwiek edytora. Następnie nadajemy plikowi
odpowiedni atrybut wykonywalności poleceniem: chmod u+x nazwa_pliku.
Uruchamiamy program, wywołując go z linii komend:

nazwa_programu         # jeśli znajduje się on 
                       # w katalogu na ścieżce
./nazwa_programu       # jeśli nie znajduje się 
                       # w katalogu na ścieżce, ale
                       # jest w katalogu bieżącym
perl nazwa_programu    # podając go jako parametr 
                       # dla interpretera
                       # (w tym przypadku atrybut 
                       # wykonywalności pliku 
                       # nie musi być ustawiony)

Istnieje jeszcze inny, czasem przydatny sposób uruchamiania programów.
Opcja interpretera -e może być użyta do wprowadzenia pojedynczej linii skryptu,
np. perl -e "print 'Hello World.';". Możliwe jest wielokrotne użycie opcji
-e i budowanie w ten sposób skryptu o wielu liniach,
np. perl -e "print 'Hello World. ';" -e "print 'Hello once again.'".

Aby sprawdzić poprawność składni jakiegoś programu, ale nie uruchamiać go,
należy interpreter wywołać z opcją -c.

Inną pomocną i stosunkowo nową w języku opcją interpretera jest -w.
Powoduje ona wypisanie komunikatów dotyczących aktualnie wykonywanego
skryptu. Często dzięki niej możemy odnaleść usterki niezauważone w procesie
kompilacji, a mimo to istotne dla działania programu.


Zmienne i tablice zmiennych.


Zmienne.


W Perlu korzystanie ze zmiennych zostało maksymalnie uproszczone.
Nie trzeba ich tu w żaden specjalny sposób deklarować. Do wszelkich zmiennych
skalarnych odwołujemy się, umieszczając przed ich nazwę znak dolara.
Przypisanie zmiennej $a wartości liczbowej 123 będzie miało postać:

$a = 123;

Aby przypisać zmiennej odpowiedniś wartość łańcuchową,
napiszemy pamiętając o apostrofach:

$a = 'xxx';

Wypisywaliśmy już zwykły tekst. Teraz dowiemy się, jak to zrobić ze zmiennymi.
Duże znaczenie mają użyte apostrofy.

$a = 'jeden';
$b = 'dwa';
$c = 'trzy';

print $a.' - '.$b.' - '.$c;#wypisze: jeden - dwa - trzy
print '$a - $b - $c';      #wypisze: $a - $b - $c
print "$a - $b - $c";      #wypisze: jeden - dwa - trzy

Tekst zawarty w pojedynczym apostrofie jest traktowany jak zwykły ciąg
znaków.
Tekst zawarty w podwójnym apostrofie może zawierać nazwy zmiennych,
które zostaną podmienione na ich wartości, jak również specjalne znaki, np.
\t (tabulator), \n (nowa linia).

Kompilator rozróżnia wielkie i małe litery ($A to nie to samo co $a).

Nazwy zmiennych dobierane są dowolnie. Mogą nimi być dowolne kobinacje liter
i cyfr (poza kilkoma wyjątkami, np. $_) o nieograniczonej długości.

Tablice zmiennych.


Szerokie zastosowanie w programowaniu znajdują z pewnością tablice
zmiennych. Duża wygoda ich użycia w Perlu wynika m.in. z tego, że nie
posiadają one określonych rozmiarów, rosną w miarę potrzeb. Aby stworzyć
tablicę i zapisać w niej wartości, napiszemy:

@imiona = ("kazik", "tomek", "marek");

Z tak przygotowanej tablicy możemy pobierać poszczególne elementy,
a także je zapisywać. Należy pamiętać, że pola tablicy są numerowane
począwszy od zera.

$imiona[0]    # tak przedstawiany jest pierwszy 
                      # element tablicy
$imiona[1] = 'zyzio'; # tak zapisujemy do drugiego
                      # pola tablicy

Każdy element tablicy to zwykła zmienna skalarna, dlatego w celu odwołania
się do niej używamy znaku dolara, a nie "małpki".

W ten sposób dodajemy do tablicy nowe elementy:

push(@imiona, "kasia");# dodanie kolejnego (czwartego)
                      # elementu do tablicy @imiona
push(@imiona, "kasia", "małgosia")   
                      # dodanie dwóch nowych 
                      # elementów na raz
@damy = ("kasia", "małgosia");
push(@imiona, @damy); # dodanie dwóch tablic do siebie

Tak usuwamy ostatni element tablicy i jednocześnie go zwracamy:

$a = pop(@imiona); # $a będzie zawierać wartość 
                   # ostatniego, usuniętego 
                   # elementu tablicy @imiona

Możliwe jest przyporządkowywanie zmiennym skalarnym tablic.
Znowu należy zwrócić uwagę na użycie apostrofów.

$a = @imiona; # zmienna $a będzie zawierać liczbę
             # elementów tablicy
$a = "@imiona"; # zmienna $a będzie łańcuchem 
          # składającym się z kolejnych elementów
          #  tablicy @imiona odzielonych spacjami

Numer ostatniego elementu tablicy otrzymujemy dzięki zastosowaniu zapisu:

$#imiona

Możliwe jest ustalanie spodziewanych wielkości tablic przez przypisywanie
odpowiednich wartości powyższej zmiennej. Ma to na celu przyspieszenie
działania programu.

Pozostała jeszcze kwestia wypisywania zawartości tablic:

print @imiona;          # wypisuje elementy tablicy
                        #  jednym ciągiem
print "@imiona";    # wypisuje elementy, 
                    # oddziela je od siebie spacjami
print @imiona."";   # wypisuje ilość elementów tablicy

Tablica @ARGV.


W specjalnej tablicy o nazwie @ARGV zapisane są wszystkie opcje podane w
linii komend przy starcie programu. Aby wypisać pierwszą opcję, napiszemy:

print("$ARGV[0]");


Następujący program zakończy swe działanie odpowiednim komunikatem,
jeśli okaże się, iż został wywołany z jakimikolwiek parametrami:

if (@ARGV)
{
  print "Program został wywołany z parametrami!\n";
}

Tablice asocjacyjne.


Poza przedstawionymi już zwykłymi tablicami istnieją jeszcze tablice asocjacyjne.
Zasadniczą różnicą między tablicą a tablicą asocjacyjną jest
sposób odwoływania się do poszczególnych ich elementów: w zwykłej tablicy
? każdemu elementowi odpowiadała liczba, podczas gdy w tablicach asocjacyjnych
każdemu elementowi będzie przyporządkowany łańcuch. W odróżnieniu od
zwykłych tablic przed nazwami tablic asocjacyjnych stawiamy znak procenta.
Przykładowo stworzymy tablicę asocjacyjną zawierającą liczby oznaczające
wiek danych osób:

%wiek = ("kazik", 17,
         "tomek", 20,
         "marek", 31);

Aby odczytać interesującą nas informacje z wcześniej przygotowanej tablicy
asocjacyjnej, napiszemy:

$wiek{"marek"}  # to wyrażenie zwróci wartość 31

Ponieważ w polach tablicy asocjacyjnej zapisane są zmienne skalarne, do ich
odczytu używamy znaku dolara.

Możliwe jest konwertowanie zwykłych tablic do tablic asocjacyjnych i na odwrót:

@tab = %wiek;           # od tej chwili @tab =
                        #  ("marek", "31", "tomek",
                        # "20", "kazik", "17");
%nowa = @tab       # od tej chwili %nowa jest taką samą 
                   # tablicą jak %wiek

Tablica asocjacyjna %ENV.


Program wykonywany w systemie UN*X może odwoływać się do zmiennych
środowiskowych, które często zawierają przydatne informacje. (Aby dowiedzieć
się o aktualnie ustalonych zmiennych środowiskowych, należy wydać polecenie:
set). Perl standardowo udostępnia nam cały zestaw tych zmiennych. Są one
umieszczone w tablicy asocjacyjnej o nazwie %ENV.

print "Ty jesteś $ENV{'USER'}, witam!";
        # zmienna środowiskowa USER zawiera
        # aktualną nazwę użytkownika