Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [JavaScript]Tablica i for
Forum PHP.pl > Forum > Przedszkole
Mlodycompany
Witam. Mam taki o to mały kodzik
  1. <script>var tablica = new Object();
  2. tablica["log"] = 0;
  3. tablica["conf"] = 0;
  4. tablica["favorit"] = 0;
  5. tablica["help"] = 0;
  6. tablica["friend"] = 0;
  7. for(i=0;i<5;i++){
  8. document.write(tablica[i]);
  9. }</script>
ale i w nim duży problem. Chodzi o to że zamist printować mi wartości elementów tablicy, printuje mi same undefined. Czy wie ktoś może jak temu zaradzić. Proszę o pomoc.
cros
Cytat(Mlodycompany @ 19.06.2010, 10:59:33 ) *
Witam. Mam taki o to mały kodzik
  1. <script>var tablica = new Object();
  2. tablica["log"] = 0;
  3. tablica["conf"] = 0;
  4. tablica["favorit"] = 0;
  5. tablica["help"] = 0;
  6. tablica["friend"] = 0;
  7. for(i=0;i<5;i++){
  8. document.write(tablica[i]);
  9. }</script>
ale i w nim duży problem. Chodzi o to że zamist printować mi wartości elementów tablicy, printuje mi same undefined. Czy wie ktoś może jak temu zaradzić. Proszę o pomoc.

Bo tworzysz tablice z nazwami kluczy, a probojesz sie do niej odwolac na zasadzie tablica[1].
Mlodycompany
No tak, ale w PHP to działa więc stwierdziłem że tutaj też zadziała
Crozin
Bo nie tworzysz tablicy tylko obiekt - to new Object niczego Ci nie zasugerowało?

Jeżeli już chcesz iterować po wszystkich składowych obiektu skorzystaj ze składni foreach:
Kod
for(var key : myObject) {
     document.write(key + ": " + myObject[key]);
}


EDIT:
Cytat
No tak, ale w PHP to działa więc stwierdziłem że tutaj też zadziała
Pomijając fakt, że PHP udostępnia tablice asocjacyjne, a JS nie to w PHP też by to nie zadziałało.
Mlodycompany
To inaczej bo się nie rozumiemy. Chce wyprintować wartości tablicy. Jak to uczynić?
Cytat
EDIT:
Cytat
Cytat
No tak, ale w PHP to działa więc stwierdziłem że tutaj też zadziała

Pomijając fakt, że PHP udostępnia tablice asocjacyjne, a JS nie to w PHP też by to nie zadziałało.

W PHP by to zadziałało to caly czas tak robie.
Crozin
Cytat
To inaczej bo się nie rozumiemy. Chce wyprintować wartości tablicy. Jak to uczynić?
Jeżeli jest to normalna tablica to tworzysz z niej tablicę w JS:
Kod
var myArray = [1, 2, 3, "ala", "ma", "kota"];
Jeżeli jest to tablica asocjacyjna wtedy tworzysz sobie obiekt:
Kod
var myObject = {
  key1: "val1",
  key2: 12,
  key3: "val3"
}
Pomocne będzie json_encode.
Jeżeli masz tablicę mieszaną, tj. o indeksach numerycznych i tekstowych - to niepowinieneś takiej mieć winksmiley.jpg

Cytat
W PHP by to zadziałało to caly czas tak robie.
To masz chyba PHP w wersji 5.3-magic, który jest wstanie odczytać indeksy 0, 1, 2, 3, 4 z tablicy, która takich nie posiada. winksmiley.jpg
yevaud
jak kolega wyzej napisal, zeby odwolac sie do wartosci takiej tablicy w php uzywasz foreach, a w js
[JAVASCRIPT] pobierz, plaintext
  1. for (var i in tablica)
  2. alert(tablica[i])
[JAVASCRIPT] pobierz, plaintext
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.