Autor Zpráva
ehm
Profil *
Ahoj, zase mám menší problém
var first=true;
var second=false;
var third=true;
var fourth=false;
var hodnoty = ["first","second","third","fourth"];
random = Math.floor ( Math.random() * hodnoty.length ); 
alert(hodnoty[random]);
potreboval by som aby mi vypisovalo náhodne tie slová ale len tie ktoré majú hodnotu true, dá sa tam nejak pridať?
ďakujem
peta
Profil
Pouzit cyklus a presypat pole do noveho, kde budou jen hodnoty s true? Nebo pouzit cyklus pro nahodne cislo a dokud nenajde polozku s true, tak cyklus opakovat?
name = hodnoty[0];
alert(window[name]==true);
ehm
Profil *
nejak inak by to nešlo? ten tvoj kód aj tak nejak nefunguje ale aj tak nič nerieši
Kajman
Profil
ehm:
Udělejte si druhé pole tvořené jen povolenými slovy a z toho teprve udělejte náhodný výběr.
ehm
Profil *
Kajman:
A to ako?
Kajman
Profil
Možná nějak takto.
function povoleneTrue(pole)
{
    var povolene=[];
    for(var i=0;i<pole.length;i++)
    {
        if(window[pole[i]]===true)
        {
            povolene.push(pole[i]);
        }
    }
    return povolene;
}
var novepole=povoleneTrue(hodnoty);

A z takto vzniknutého pole si udělejte teprve náhodný výběr.
weroro
Profil
Nestačilo by napr. aj toto?
var first = true;
var second = false;
var third = true;
var fourth = false;
var hodnoty = ["first", "second", "third", "fourth"];
for (var i = 0; i < 100; i++)
{
    var Random = Math.floor (Math.random () * hodnoty.length);
    if (window[hodnoty[Random]])
    {
        alert(hodnoty[Random]);
        break;
    }
}
Ak nie, tak prečo? > (script funguje, len očakávam, že moje js riešenia nemusia byť najlepšie, preto sa pýtam na možné zádrhely, ktoré vyrábam)
ehm
Profil *
weroro:
teoreticky hej, ibaže v mojom prípade nie pretože by sa tam dostala po random aj hodnota false a ja tam musím mať hodnotu true
Kajman
ďakujem skúsim
weroro
Profil
ehm:
Ono to vypisuje iba true, práve to false preskakuje.
ehm
Profil *
áno vypisuje ale v prípade že by random bol false tak nevypíše nič samozrejme že by som si to nevšimol lebo je to v cykle a hneď by vypísalo true ibaže to je práve to čo ja nechcem :) potrebujem iba true

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: