Scrierea si executia programelor JavaScript
Scripturile JavaScript sunt integrate într-un document HTML între etichetele <script> si </script>. Intr-un document pot exista mai multe perechi de etichete <script> si </script>, si fiecare p 757i86h oate încadra mai multe seturi de instructiuni. Atributul type sau language este folosit pentru a specifica limbajul în care este scris scriptul, iar atributul src pentru a specifica numele fisierelor JavaScript externe. Pe platformele Microsoft, o alta alternativa pentru inserarea scripturilor-urilor este type sau language="VBScript". Daca codul JavaScript este scris direct în documentul HTML, acestea sunt scripturi in-line. In multe cazuri se prefera însa gruparea codului JavaScript într-un fisier separat (cu extensia .js), care trebuie referit prin intermediul etichetei src.
Un exemplu simplu de script este urmatorul:
<html><body>
<h1>Primul program JavaScript</h1>
<script type="text/JavaScript">
document.write("<p><b>Hello World!</b>");
document.write("<p>" + document.lastModified);
</script>
</body></html>
Acest script afiseaza "Hello World!" si afiseaza data la care pagina a fost creata.
![]() |
Documentul începe si se termina cu etichete normale HTML. Etichetele HTML <script> si </script> sunt folosite pentru a introduce instructiuni JavaScript în documentul web. Cele doua linii de cod JavaScript folosesc metoda write a obiectului document (document.write()) pentru a afisa în mod dinamic text în documentul HTML. În prima declaratie sirul "<p><b>Hello World!</b>" defineste textul ce va fi scris în pagina web. În a doua declaratie sirul "<p>"este concatenat (+) cu o variabila predefinita document.lastModified. Impreuna, ele încep un nou paragraf si afiseaza data si ora când pagina a fost creata.
Când aceasta pagina este încarcata într-un browser mai nou, JavaScript-ul este interpretat si înlocuit cu rezultatul declaratiei document.write(). Daca se vizualizeaza sursa folosind NetscapeTM Communicator, se observa ca JavaScript a executat si înlocuit rezultatele. Alte browser-e ca si Microsoft's Internet Explorer afiseaza codul original JavaScript prin functiile sale de vizualizare a sursei.
In general, daca se doreste generarea unui text pentru o pagina web folosind JavaScript, acesta se poate genera (vezi exemplul) sau cel putin apela, în interiorul sectiunii <body>. Un exemplu în acest sens este urmatorul:
<html><body>
<h1>Tabel factoriale</h1>
<script language="JavaScript">
//<!-ascunde codul pentru browsere mai vechi
var fact = 1;
for (i=2; i<11; i++)
// sfirsit -->
</script>
</body></html>
![]() |
Etichetele <html> , <body> si <h1> au întelesul lor normal. Codul JavaScript din acest exemplu defineste un ciclu cu 9 iteratii unde variabila fact ia valori de la 1 la 9. Primul apel la document.write() afiseaza rezultatele factorialului. Al doilea apel la document.write() pune o eticheta <br> la iesire, cerând astfel o linie goala în afisarea browser-ului, dupa care afisarea continua într-o maniera iterativa pîna la terminarea celor 9 iteratii.
De remarcat faptul ca JavaScript este încadrat într-un comentariu HTML ce începe cu <!-- si se termina cu -->. În acest fel, un browserele web care nu suporta JavaScript vor trata codul ca si un comentariu HTML, ignorîndu-l.
Este preferabil ca functiile si alte elemente JavaScript care ar trebui sa fie aplicabile întregii pagini, sa fie continute în sectiunea <head> a documentului. Plasarea etichetei <script> în sectiunea <head> a unui document asigura evaluarea, si daca este cazul executarea, tuturor instructiunilor înainte ca utilizatorul sa interactioneze cu documentul; astfel se previne situatia în care interactiunea apare înainte ca scriptul sa fie complet executat.
<html>
<head>
<title>Pagina cu buton</title>
<script language="JavaScript">
function pushbutton()
</script>
</head>
<body>
<form>
<input type="submit" name="Butonul meu" value="push"
onclick="pushbutton()">
</form>
![]() |
In general, executarea unui script începe în momente diferite, în functie de felul în care este scris. Daca scriptul afecteaza continutul de pagina, de exemplu contine metoda document.write(), este executat pe masura ce este întîlnit. Exista de asemenea un handler de eveniment, onLoad, în cazul caruia scriptul este executat numai dupa ce tot documentul HTML a fost încarcat în browser.
Daca scripturile (de obicei sub forma de functii) JavaScript sunt într-un fisier separat, ele sunt de asemenea evaluate cînd se încarca pagina, înainte sa aiba loc vreo actiune. Toate actiunile din blocul unei functii JavaScript sunt interpretate, dar functia nu este executata decît atunci cînd este apelata printr-un eveniment HTML sau dintr-un alt script:
<html><head>
<script language="JavaScript">
function showDate()
</script>
</head><body>
<h2>Afiseaza data in JavaScript</h2>
<form>
<input type="button" value="Afiseaza data"onClick="showDate();">
</form>
</body></html>
Codul din <head> defineste functia showDate(). Aceasta functie scrie doar un paragraf cu obiectul Date. Dupa încarcare, functia JavaScript este evaluata (verificata de erori) si stocata pentru o executie ulterioara. În <body>, functia este apelata de evenimentul onClick. Când utilizatorul face click pe butonul "Show the Date", evenimentul onClick declanseaza executia functiei showDate(). Aceasta functie afiseaza un mesaj în care tipareste paragraful de iesire. O functie odata definita în sectiunea <head>, poate fi apelata din nou folosind diferite evenimente. Nu ar fi fost nici o problema daca functia nu ar fi fost apelata niciodata în cadrul sectiunii <body>; functia ar putea fi apelata eventual de o alta functie JavaScript, care eventual este apelata din sectiunea body.
![]() |
|