Autor | Zpráva | ||
---|---|---|---|
ehm Profil * |
#1 · Zasláno: 27. 3. 2012, 17:21:57
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]); ďakujem |
||
peta Profil |
#2 · Zasláno: 28. 3. 2012, 08:15:08
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 * |
#3 · Zasláno: 28. 3. 2012, 15:35:45
nejak inak by to nešlo? ten tvoj kód aj tak nejak nefunguje ale aj tak nič nerieši
|
||
Kajman Profil |
#4 · Zasláno: 28. 3. 2012, 16:23:29
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 * |
#5 · Zasláno: 28. 3. 2012, 16:52:03
Kajman:
A to ako? |
||
Kajman Profil |
#6 · Zasláno: 28. 3. 2012, 17:05:29
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; } } |
||
ehm Profil * |
#8 · Zasláno: 28. 3. 2012, 17:16:37
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 |
#9 · Zasláno: 28. 3. 2012, 17:18:40
ehm:
Ono to vypisuje iba true, práve to false preskakuje. |
||
ehm Profil * |
#10 · Zasláno: 28. 3. 2012, 17:35:00
á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
|
||
Časová prodleva: 12 let
|
0