Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [JavaScript]Pętla for coś przeszkadza
Forum PHP.pl > Forum > Przedszkole
Odoakr
Dlaczego funkcja "test" działa, a "buforowanie" nie?questionmark.gif?
test na www.geostrona.pl/ural

w przypadku funkcji buforowanie() firebug wyrzuca:
TypeError: points.features[i] is undefined


  1. function test()
  2. {
  3. var tablica = [];
  4. var j = 2;
  5. tablica[j] = points.features[j].geometry;
  6. alert(tablica[2]);
  7. }
  8.  
  9.  
  10. function buforowanie()
  11. {
  12.  
  13. var tabelka =[];
  14. for (var i = 0; i < 100; i++)
  15.  
  16. {
  17. tabelka[i] = points.features[i].geometry;
  18. }
  19.  
  20. }
Kostek.88
http://www.w3schools.com/js/js_loop_for.asp - tutaj mowia, by var i=0 dac przed petla, a w samej petli i=0; i< 100; i++ . Faktycznie, w C++ chyba mozna tak bylo zadeklarowac. W JS nie jestem pewien smile.gif
Odoakr
niestety - dalej to samo:(
w przypadku funkcji buforowanie() firebug wyrzuca:

TypeError: points.features[i] is undefined
Kostek.88
A na pewno to sie moze od 0 zaczynac?
Odoakr
Tak

W konsoli firebuga można wpisać.
points.features[0].geometry

wyskakuje obiekt
zegarek84
jesteś pewien, że masz 100 obiektów w tablicy features?? Problemu by nie było, gdybyś nie odwoływał się jeszcze do dodatkowych własności...

zamień kod
Kod
tabelka[i] = points.features[i].geometry;

na:
Kod
if(points.features[i]){
tabelka[i] = points.features[i].geometry;
}else{
console.log("Brak elementu "+i);
}
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.