Pagina de start a forumului Comunitatea JustUs  
FAQ Cautare
Membri Grupuri
Profil Mesaje private
Inregistrare Autentificare
Parcurgere matricelor (Array) in JavaScript
Creaza un subiect nou   Raspunde la subiect    Pagina de start a forumului Comunitatea JustUs Tutoriale JavaScript
Subiectul anterior :: Subiectul urmator  
Autor Mesaj
Elektro_Love
Administrator
Administrator
Elektro_Love

Data inscrierii: 21/Iul/2010
Mesaje: 101

MesajTrimis: 23/07/2010 14:53    Titlul subiectului: Parcurgere matricelor (Array) in JavaScript Raspunde cu citat (quote)

Matricele (Array) sunt tablouri de date care pot stoca mai numeroase valori intr-un singur nume de variabila (vedeti si punctul 2, "Obiectul Array" din lectia Obiecte JavaScript).
Matricele sunt de doua feluri: secventiale (care are cheile numere consecutive) si non-secventiale (in care cheile sunt numere aleatoare, sau chiar siruri).
1. Array secvential
Matricele secventiale pot fi confecționate in mai multe moduri, in general folosind Obiectul Array. Iata cateva exemple ale aceeasi matrice:

Citat:
<script type="text/javascript"><!--
// Metoda 1 - cu specificarea cheilor si separat fiecare element
var aray1 = new Array();
aray1[0] = 'marplo.net';
aray1[1] = 'jocuri';
aray1[2] = 'anime';

// Metoda 2 - separat fiecare element, dar fara specificarea cheilor (fiind subantelese)
var aray2 = new Array();
aray2[] = 'marplo.net';
aray2[] = 'jocuri';
aray2[] = 'anime';

// Metoda 3 - elementele adaugate direct in initializarea obiectului Array (separate prin virgula)
var aray3 = new Array('marplo.net', 'jocuri', 'anime');

// Metoda 4 - intre o pereche de paranteze patrate (fara specificarea lui Array)
var aray4 = ['marplo.net', 'jocuri', 'anime'];
//--></script>


- Toate cele 4 matrici (aray1, aray2, aray3 si aray4) sunt identice ca valori si chei, au aceleasi elemente.

Parcurgerea unei matrice (sau Array) secventiale se face de obicei cu instructiunea "for".
Exemplu:

Citat:
<script type="text/javascript"><!--
// Array-ul cu datele
var aray = new Array('www.marplo.net', 'cursuri', 'tutoriale');

// Parcurgerea matrice cu "for" si afisarea unei ferestre Alert cu fiecare element
for (var i=0; i<aray.length; i++) {
alert(aray[i]);
}
//--></script>


- "aray.length" determina numarul de elemente din matricea "aray"

2. Array non-secvential
In cazul matricelor non-secventiale lucrurile sunt putin diferite. Pentru crearea lor se foloseste metoda 1 (aratata mai sus), in care se initializeaza obiectul Array si se specifica separat fiecare cheie si element.
Pentru parcurgerea unui Array non-secvential trebuie abordata a o alta metoda, mai ales daca se doreste si aflarea /folosirea valorii cheilor. Se foloseste o alta forma a instructiunii "for", si anume: for (var i in nume_array) (e similara cu "foreach" din PHP), aceasta parcurge matricea "nume_array" de la primul element pana la ultimul iar variabila "i" va avea ca valoare cheia elementului curent.
Iata un exemplu din care veti intelege mai bine:

Citat:
<script type="text/javascript"><!--
// Se defineste matricea non-secventiala
var aray = new Array();
aray['site'] = 'marplo.net';
aray['curs'] = 'javascript';
aray[2] = 'php-mysql';

// Se parcurge matricea cu "for (var i in aray)
for (var i in aray) {
// Se definesc datele ce trebuie afisate
var msg = "key = "+ i+ "\nVal = "+ aray[i];
alert(msg);
}
//--></script>

_________________
[url=http://www.fodey.com/generators/animated/ninjatext.asp]Parcurgere matricelor (Array) in JavaScript Parcurgere matricelor (Array) in JavaScript[/url]
Vezi profilul utilizatorului Trimite mesaj privat
Afiseaza mesajele pentru a le previzualiza:   
Creaza un subiect nou   Raspunde la subiect    Pagina de start a forumului Comunitatea JustUs Tutoriale JavaScript Ora este GMT + 3 ore
Pagina 1 din 1

 
Mergi direct la:  
Nu puteti crea un subiect nou in acest forum
Nu puteti raspunde in subiectele acestui forum
Nu puteti modifica mesajele proprii din acest forum
Nu puteti sterge mesajele proprii din acest forum
Nu puteti vota in chestionarele din acest forum
ezHyperShadow template - a boo design Original ezHyperShadow theme by boo ©2004 www.ez-life.net
Powered by phpBB © 2001, 2002 phpBB Group
Fa-ti si tu propriul forum GRATUIT, pe www.myforum.ro