Javascript – wstęp
Cw. 0.
Teoria.
1) Co to jest jezyk JavaScript, JScript i ECMAScript?
2) Jakim typem jezyka jest JavaScript?
3) Jakie sa roznice pomiedzy JavaScript-em i Java?
4) Do czego sluzy jezyk JavaScript?
5) Czy wielkosc liter w jezyku JavaScript ma znaczenie?
6) Jak komentujemy kod w jezyku JavaScript?
7) Jakie typy danych obsluguje JavaScript?
Cw. 1.
Stworzyć prosty dokument html, zawierający jeden nagłówek: „Nagłówek
strony”(znacznik <h1>). Następnie wstawić prosty skrypt wyświetlający okno dialogowe z tekstem: „Czy widzisz nagłówek strony?” (metoda alert()).
Skrypt niech będzie wstawiony za pomocą znacznika <script> z uwzględnieniem starych przeglądarek nie obsługujących języka (odpowiednie użycie
komentarzy HTML) i z atrybutami type i language.
Wstawić ten blok skryptowy w różnych miejscach w dokumencie (sekcja <head>, na początku sekcji <body> i przed zamykającym znacznikiem </body>). Jaka jest różnica w działaniu skryptu?
Cw. 2.
Wykonać to samo, co w ćw. 1, ale kod skryptu umieścić w zewnętrznym pliku.
Cw. 3
a) Napisać skrypt, który pobiera imię i nazwisko użytkownika (metoda prompt()).
b) Napisać skrypt, w którym pada pytanie: ”Czy chcesz stąd wyjść?” (metoda confirm())
c) Zmodyfikować skrypt z punktu a) tak, podane przez użytkownika imię i nazwisko ukazało się w oknie ostrzeżenia (metoda alert())
Cw. 4. Wykonaj poniższe operacje. Porównaj wyniki.
a) ”string1” + 3 + ”string2”
sposób realizacji: var zmienna=”string1” + 3 + ”string2”;
alert(zmienna);
b) 2 + 3 + ”string2”, c) ”string1” + 3 + 2, d) ”string1” + ”string2”, e) 3 + ”string2” + 2.
Cw. 5. Przetestuj działanie predefiniowanych funkcji globalnych: escape(), unescape(), eval(), isFinite(), isNaN(), Number(), parseFloat(),
parseInt(), toString(). W tym celu wykonaj następujące skrypty:
a) var roznica=”$5 - 4”;
var kod=escape(roznica);
alert(kod);
var dekod=unescape(kod);
alert(dekod);
b) var mojKod=”alert(‘To był ciąg znaków’)”;
document.write(mojKod);
eval(mojKod);
c) alert(isFinite(3/0));
alert(isFinite(3));
alert(isNaN(3));
alert(isNaN(“a“));
d) alert(Number("1.45 nie jest liczbą"));
alert(parseFloat("3.1415 jest liczbą"));
alert(parseInt("2.1"));
alert(parseInt("2.99999"));
alert(parseInt(“1111“,2)); //zwróci 15, alert(parseInt(“20“,16)); //zwróci 32, alert(parseInt(“10“,8)); //zwróci 8,
alert(parseInt(“ff.ff“,16)); //zwróci 255, alert(parseInt(“011“,8)); //zwróci 9, alert(parseInt(“111“,3)); //zwróci 13, e) var liczba1=24;
var liczba2=13;
alert(liczba1+liczba2.toString()); //wyświetli 2413 f) var x=10,y=0.5;
alert(x.toString(8)); //wyświetli 12 alert(y.toString(16)); //wyświetli 0.8
Cw.6. Wykorzystując instrukcję “if else” stworzyć skrypt, w którym
pobierana jest dowolna liczba (metoda prompt()), a następnie wyświetlana jest informacja jakiego znaku jest ta liczba (metoda alert()).
Cw. 7. Wykonaj poniższe skrypty. Na podstawie otrzymanych wyników odpowiedz na pytanie: jaka jest zasadnicza różnica między pętlami „while” i „do while”?
a) var licznik=0;
while(licznik<0) licznik++;
alert("Liczba iteracji wynosi "+licznik);
b) var licznik=0;
do
licznik++;
while(licznik<0)
alert("Liczba iteracji wynosi "+licznik);
Cw. 8. Zmodyfikować skrypt z ćw. 6 tak, aby działał również wtedy, gdy nie zostanie pobrana liczba (np. w wyniku pomyłki). Dokładniej okno dialogowe (metoda prompt()) musi się pojawiać dotąd, aż wprowadzimy liczbę. Za każdym razem, jeśli wprowadzimy coś innego niż liczbę lub nic nie wprowadzimy, musi pojawić się informacja: „To nie jest liczba. Spróbuj jeszcze raz”
(metoda alert()).