JavaScript dla każdego
//  wróć   główna   dalej  //

Obiekt String

String indexOf()

Obiekt string dostarcza właściwości i metod do operowania na zmiennych. Zmienne te są traktowane jako ciągi znaków. Jeżeli będzie to liczba, to nie jest ważna jej wartość ale ciąg cyfr.

W wielu formularzach trzeba podać adres e-mail. Jego cechą charakterystyczną jest występowanie znaku @. Można spotkać także inny ciąg znaków zastępujący małpę (at). Poniższy formularz sprawdza, czy adres jest poprawnie wpisany.

Najważniejszym warunkiem jest występowanie znaku @ lub ciągu znaków (at). Pomocna do tego będzie właściwość obiektu indexOf(). Pobiera ona dwa argumenty. Pierwszym jest poszukiwany łańcuch znaków. Drugą wartością indeksu, od którego należy zacząć poszukiwania. Pierwsza zmienna stringa ma indeks równy zero. Na początek definicja pola formularza:

<FORM NAME=Form>
<INPUT TYPE=Text NAME=Malpa>
</FORM>

Poniższe instrukcje sprawdzają, czy pole tego formularza zawiera znak @ lub (at).

Mail=document.Form.Malpa.value;
Nr=Mail.indexOf("@", 0);
if (Nr==-1) Nr=Mail.indexOf("(at)", 0);

Zmienna Nr określa numer indeksu występowania poszukiwanego znaku. Jeżeli będzie równa -1, to oznacza, że znak małpa nie występuje w podanym znaków, wtedy jest poruszukiwany alternatywny ciąg znaków.

Okienko dialogowe wyświetla potwierdzenie poprawności adresu. Skrócona instrukcja wyboru (więcej I>>) zwraca wartośc, która będzie wyświetlana w okienku dialogowym:

alert((Nr!=-1) ? "OK" : "Błędny")

Tak skonstruowany formularz nie będzie działał profesjonalnie, bo nie wyklucza przypadku, kiedy wpiszemy dwa znaki @. To nie jest jedyna wada tego formularza, ale jego zadaniem było pokazanie działania obiektu string.


Do góry