Autor Zpráva
guma
Profil *
čus, chci projet objekt, aby se bi objevilo 9 alertů

1. tři alery by byly:
auto má tyto vlastnosti 180
auto má tyto vlastnosti 2 tuny
auto má tyto vlastnosti červená

atd.

momentálně mi to oznámí auto má tyto vlastnosti [object Object]. Což je pochopitelný, když do alertu zadám malyObjekt[atributH].vaha, tak se mi vypíše jen váha.

c
var malyObjekt = {};

function VytvorObjekt(rychlost,vaha,barva) {
this.rychlost = rychlost;
this.vaha = vaha;
this.barva = barva;
}

malyObjekt['auto'] = new VytvorObjekt("180","2 tuny","červená");
malyObjekt['náklaďák'] = new VytvorObjekt("120", "4 tuny", "modrá");
malyObjekt['pickup'] = new VytvorObjekt("160", "1,3 tuny", "zelená");


  for (var atributH in malyObjekt) {
    alert(atributH + " má tyto vlastnosti " + malyObjekt[atributH]);
  }


zkoušel jsem přidat cyslus procházející polem:

var pole = ["rychlost","vaha","barva"];

for(var i=0; i<pole.length; i++) {
  for (var atributH in malyObjekt) {
    alert(atributH + " má tyto vlastnosti " + malyObjekt[atributH].vaha + "/n" malyObjekt[atributH].rychlost);
  }
}


ale neprošlo to:-) tak jak udělat, aby se mi zobrazili 3 hodnoty 3 atributů objektu? díky
peta
Profil
co treba premyslet?
var t,key,objekt;
t = '';
for (key in objekt)
{
t+= '<br>' + key + ' = ' + objekt[key];
}
document.write(t);
To je jasne?

Ale, co kdyz ma objekt jeste podobjekty?
typeOf(objekt[key]) v pripade 1 vypise string, v pripade 2 object
Jak prochazis objekt1? tak musis prochazet objekt 2, takze 2 cykly fo v sobe?

for (key1 in objekt)
{
for (key2 in objekt[key1])
{
t+= '<br>' + key1 + ' : ' + key2 + ' = ' + objekt[key1][key2];
}
}

Treba to bude fungovat.
guma
Profil *
Dík. Příště bez tý arogance, nikdo na to není zvědavej

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: