Pytanie pewnie banalne, ale coś mi nie idzie.
Mam tablicę 7 elementów
var headers = ['id', 'producent', 'model', 'ekran', 'procesor', 'ram', 'cena'];
Wczytuję sobie plik XML, który składa się z tagów <product>, w których siedzą tagi z tablicy headers (a w nich siedzą odpowiednie własności, jak <producent>Sony</producent> itd).
Wczytany plik XML "melduje się" jako string, który rozbijam metodą split('\n'); na poszczególne linijki i umieszczam w tablicy arr. Czyli w tej nowej tablicy mam (jako oddzielne elementy) po prostu kolejne linijki z pliku XML.
Chciałem w pętli (iterując po długości tablicy arr, w której jest cały plik XML rozbity na linijki) porównywać, czy w danej linijce w tagach <> znajduje się to samo, co w danym elemencie tablicy headers. Główny problem polega na tym, że tablica headers jest krótsza od arr. Udało mi się wypisać elementy headers w pętli iterującej po arr, ale gdy skończy się 1 produkt, to pętla leci dalej i pokazuje kolejne linijki pliku XML - ale elementy headers "gubią" iteracje, przez co są źle pokazywane (a nawet w 1 produkcie zamiast "cena" jest już "id").
Kod pętli:
for (var i=0,j=i-2; i< arr.length; i++)
{
console.log(arr[i],' ',global.headers[j]);
j++;
if (j == 6)
{
j=0;
}
}
To pokazuje konsola:
Jak więc mogę porównać elementy 2 tablic o różnej długości?