« 1 2
Autor Zpráva
Schamann
Profil *
Tak kdyz jste tak chytry, panove, co kdybyste misto hledani chyb napsali odpoved :) nenapisete, pac nevite. je irelevantni duvod, ale na druhou stranu je videt, ze umite vlastni nevedomost maskovat za kritiku druhych. Maucta
_es
Profil
Schamann:
co kdybyste misto hledani chyb napsali odpoved :)
Odpoveď na čo? Nenapísal si nič, čo by mal tvoj kód vo výsledku robiť. Nenapísal si, aký by malo riešenie tvojho dotazu praktický zmysel. Nevieš rozumne sformulovať, čo vlastne chceš.

umite vlastni nevedomost maskovat za kritiku druhych.
Mne to skôr pripadá, že vlastnú neznalosť programovania skrývaš za tvrdohlavé trvanie na nezmyselných dotazoch a dotazy o ich zmysle ignoruješ.
Chamurappi
Profil
Reaguji na Schamanna:
nenapisete, pac nevite.
Víme, ale nepovíme :-)
Podobné dětinské triky na ždímání odpovědi ti nevyjdou, to ohavné řešení, po němž prahneš, zde všichni známe (dokonce ti ho jeden z odpovídajících naznačil), ale nepotřebujeme ti to dokazovat. Hledáš-li špatná řešení, zeptej se někde jinde.

Přeji hodně štěstí s patláním.
1Pupik1989
Profil
Samozřejmě lze vytvořit dynamicky proměnnou.

Otázka ale zní: "Jak ty proměnné používáš, když nevíš kolik jich je?"
Pokud k nim budeš přistupovat přes object window, není rozumnější prostě přistoupit k tomu poli, které je na to určené?
_es
Profil
1Pupik1989:
"Jak ty proměnné používáš, když nevíš kolik jich je?"
Pokud k nim budeš přistupovat přes object window,...
Premenné sú prístupné prostredníctvom ich mena, nie „cez nejaký objekt“, inak to už nie sú premenné. Medzi globálnymi premennými a vlastnosťami objektu window je tiež rozdiel.
1Pupik1989
Profil
_es:
Já myslel jak zjistí, jestli u každé proměnné bude ověřovat její existenci.
Jestli bude všude:

if(marker1){}
if(marker2){}

atd. atd.

Medzi globálnymi premennými a vlastnosťami objektu window je tiež rozdiel.
Ale přes objekt window se dají deklarovat.
_es
Profil
1Pupik1989:
přes objekt window se dají deklarovat.
To už potom ale nie sú globálne premenné, ale len vlastnosti objektu window (čo nie je celkom to isté).
Schamann
Profil *
Tak aby bylo jasno vecer jsem si hral shodou okolnosti s mapama pro jednu malou stranku, nasel jsem kod kterej jsem chtel pouzit primo na google:
http://gmaps-samples-v3.googlecode.com/svn/trunk/single-infowindow/single-infowindow.html
chtel jsem ho jen malicko upravit, aby mi vyhovoval.
zobrazene souradnice si nacitam z databaze, pokazde jsou jine a pokazde jich je jiny pocet.
ten konkretni kod se da jednoduse vygenerovat v PHP tato:

<?php
for($d=0; $d < 3; $d++ ){
$JAVASCRIPT_MARKER= "
var marker" . $d . " = new google.maps.Marker({
map: map,
position: new google.maps.LatLng(" . $lat . ", "$lon")
});

google.maps.event.addListener(marker" . $d . ", 'click', onMarkerClick);
$MARKERY = $MARKERY . " " . $JAVASCRIPT_MARKER;
}
?>

... tady je JS pred markerama ...

<?php echo $<MARKERY ?> // tady vlozim vygenerovane markery

... tady pokracuje zbytek stranky...

Neresim jestli je ten kod "cistej" "spravnej" nebo cokoliv jineho o tom polemizovat nechci. jen jsem to chtel udelat bez toho PHP a neslo mi to. proto jsem se ptal na vygenerovani marker1 , marker2 atd primo v JS.

Programuju 20 let, ano mozna programuju od doby kdy vetsina z vas jeste nechodila do skoly, umim Pascal, C, .Net, Visual Basic 6, PHP, FoxPro, SQL,starej Basic, Karel, Fand, jazykky tere uz davno neexistujou atd atd, Muj prvni pocitac byl IQ 151, blbejch 8 bitu a herkules monitor, programy jsem nahraval z pasku a daly se tam delat veci, pak Atari 1040, 16 bit super comp v dobe kdy prvni AT 286 stalo 60 000,-, jumperoval jsem IRQ na radicich a VESA LOCAL BUS si uz asi nidko nepamatuje, pamatuju opravdovy Floppy disky, opravoval jsem salove pocitace s elekronkama. mam za sebou velke serverove projekty, umim TCP/IP na urovni hardware, moje data centrum obsluhuje tisice terminalu. Nemam cas se kuli jedine strance s blbou mapou ucit JS ktery dalsich 30 let nepouziju.
Nikoho neponizuju blbejma otazkama na smysl jeho dotazu. Proste jsem chtel jen odpoved na neco co me zaujalo a na co jsem v prubehu 30 minut ktere jsem tomu hodlal venovat nenasel odpoved v zadnem tutorialu.


a jestli nejakej blbec rekne ze to fungovat nemuze protoze v "$lon" nejsou tecky tam me porazi pac o tom vim!
_es
Profil
Schamann:
umim Pascal, C,...
Ako v C až počas behu aplikácie vytvoríš premennú s ľubovoľným názvom? Teda rovnakú vec, na akú si sa pýtal?

se da jednoduse vygenerovat v PHP tato:
A na čo ti ten „jednoducho vygenerovaný“ kód s neviem koľkými premennými je, keď ich aj tak ďalej nepoužívaš? A len posielaš nadbytočne veľký JS kód prehliadaču? Je predsa aj tak jedno, ako ho server vygeneruje, či cez PHP, Javu, VB.NET, node.js,.., alebo ako statický kód s tromi premennými marker0, marker1, marker2.

Nemam cas se kuli jedine strance s blbou mapou ucit JS ktery dalsich 30 let nepouziju.
Ak niekto chce programovať v nejakom programovacom jazyku, tak obvykle chápe to, že sa musí naučiť minimálne jeho základy. Programuješ vraj 20 rokov a ďalších 30 rokov vraj JS nechceš použiť. Ak chceš v JS vytvárať aplikácie, prečo si teda na to nezaplatíš človeka a vyčkávaš na odpovede zdarma na začiatočnícke dotazy?
Schamann
Profil *
a jeje - nechci vytvaret aplikace v JS, chtel jsem udelat jednoduchou stranku kde se mi ukazou puntiky na mape. protoze jich nikdy nebude x tisic tak mi je celkem jedno jak velky ten kod v JS bude. Pokud potrebuju na chalupe natrit okna tak si koupim nejakou stetku a nejakou barvu v obi a neresim jestli mi nekde neco ukapne nebo pretahnu na omitku. jasne, ze si na to muzu najmout profiky z Prahy. ale vynalozene usili se pak nerovna pozadovane kvalite a navic me malovani desne bavi pac jsem na cerstvym vzduchu a delam neco jineho nez sedim upocitace, nebo ty snad neumejvas nadobi? neluxujes? nemenis kolo u auta, nechodis nakupovat? vzdyt na to vsechno jsou firmy ktere ti to udelaj...
A zase proc proc proc... proste protoze.


a uz dost uz me to s vama fakt nebavi.
shaggy
Profil
Schamann:
Nebude to fungovať, pretože v $lon nie sú bodky. Ale nielen preto, $lat a $lon nemáš nikde definovanú. Toto by človek, ktorý údajne ovláda PHP nikdy nenapísal.
Ja som tiež začínal programovať v Pascale pred 15+ rokmi, to ale neznamená, že sa na to budem odvolávať. Absolútne to nesúvisí s mojou schopnosťou programovať v iných jazykoch.

nechci vytvaret aplikace v JS, chtel jsem udelat jednoduchou stranku kde se mi ukazou puntiky na mape.
To je tvoj problém. Napísali sme ti, ako to máš urobiť, ale ty si mal potrebu to za každú cenu riešiť a hľadať iné (zlé) riešenie.
Keby si na začiatku napísal, čo chceš dosiahnuť, asi by som ti hneď odpísal ja (keďže som to presne v tej istej chvíli riešil) a do dvoch hodín by si mal takú krásnu mapu, že by si vďaka nej možno aj uveril, že je Zem guľatá.

Ten príklad z google je vhodný, len ak máš konečné (malé) množstvo markerov, ktoré vopred poznáš. Vytvárať nové premenné (ktorých počet si jednoduchým spôsobom nebudeš vedieť zistiť), je nelogické.
Ty predsa nepotrebuješ samotné premenné, ty potrebuješ ku každému markeru naviazať zobrazenie info okna na klik. A tam ti môže byť jedno, či to urobíš našim (dobrým) spôsobom, alebo svojim (nelogickým, prakticky nepoužiteľným) spôsobom.
_es
Profil
Schamann:
Pokud potrebuju na chalupe natrit okna tak si koupim nejakou stetku a nejakou barvu v obi a neresim jestli mi nekde neco ukapne nebo pretahnu na omitku.
Tak aspoň si snáď na obale tej farby prečítaš nejaký návod, akým riedidlom sa riedi a pod., či nie? Alebo budeš radšej riešiť problém, ako natierať farbou rozriedenou s nevhodným riedidlom, lebo riedidlo musí byť také, „Lebo, nikoho do toho nič, prečo musí byť práve také!“?
Chamurappi
Profil
Reaguji na Schamanna:
jen jsem to chtel udelat bez toho PHP a neslo mi to
Z DB ta data stejně musí vytáhnout PHP (tzn. na straně serveru) a musí se s nimi něco udělat (pravděpodobně v cyklu), aby se dostala do JS. Můžeš generovat to, co už teď generuješ, nebo nějaké JS pole a to pak zpracovat cyklem v JS způsobem, jaký jsem ukazoval na předchozí straně. Ale nějaká PHP složka tam být musí…

proto jsem se ptal na vygenerovani marker1 , marker2 atd primo v JS
V uvedeném kódu ani nepotřebuješ různě pojmenované proměnné. Když smažeš všechny " . $d . ", bude fungovat úplně stejně. Můžeš mít jen jednu proměnnou marker, marker v mapě nezanikne, když její obsah přepíšeš, protože tím zrušíš jen ukazatel na objekt. Tím ti úplně odpadá otázka, na kterou ses celý den ptal…

navic me malovani desne bavi
Analogie s malováním asi není moc přenositelná na JS, protože ten tě očividně moc nebaví. Takový krásný jazyk to je :-)

Nikoho neponizuju blbejma otazkama na smysl jeho dotazu.
My jsme tě nechtěli ponižovat, jen rozebrat skutečný problém a najít nejlepší možné řešení, protože jsi na to šel ze špatné strany. Pokud se cítíš uražen mými příspěvky, tak se omlouvám (ani tu větu s patláním jsem nemyslel tak pejorativně, jak zřejmě vyzněla). Ale pořád moc nerozumím, jak a co jsi chtěl dynamicky nazvanými proměnnými vlastně řešit.


Reaguji na shaggyho:
$lat a $lon nemáš nikde definovanú
Pravděpodobně kousek kódu vynechal. Z předchozích příspěvků je zřejmé, že provedení v PHP mu funguje.
Schamann
Profil *
zdroak z googlu kterej jsem chtel upravit v cyklu neni, ten cyklus jsem si tam udelal sam, protoze jsem nemel presne zadanej pocet puntiku. nechtel jsem se zabyvat studiem goglovskych api pro jednoduchou stranku ktera ma delat jednu konkretni vec. ANO ta konstrukce s PHP mi fungovala, samozrejeme to ctu z DB a lat lon zjistuju v cyklu drive, nicmene pro nase povidani to nepovazuju za dulezite. vy jste chteli videt co resim, a proc jsem chtel ony promenne. znovu opakuju si myslim, ze ten puvodni kod neni o nic horsi nez ten ktery mam ted. jen jsem ji chtel toho php zbavit a udelat to jen v JS, taky kvuli tomu jsem nasel ten druhej prispevek kde se nekdo ptal proc mu ty puntiky neukazujou infowindow spravne, me to taky neukazovalo spravne, nasel jsem tenhle kod, kterej spravne fungoval, z toho to cele vzniklo. analogie s chalupou je spravna, protoze to co jsem potreboval udelat je soukroma vec pro moji soukromou potrebu a nikde se tim prezentovat nebudu. protoze jste se v tom zacali vrtat tak jste mi prideali praci minimalne na 4 hodiny, kdy jsem testoval a zkousel, a samozrejme jsem tve reseni Chamurappi shledal mnohem jednodussi a "rozumejsi". nicmene stale to neresi proc nejde udelat marker1 marker2 jako v PHP konstrukci marker" . $d . " pomoci javascriptu (ocekaval jsem, ze neco jako marker + i, by mohlo fungovat) a to bylo to nac jsem se puvodne ptal a co me "ze zvedavosti" zajimalo. Vysledek je ten, ze na strankou, kterou jsem mel puvodne za 30 minut hotovou, jsem stravil dalsi 4 hodiny mozna vic. Ted mam stranku s malym js, funkcni, hezkou, podle kriterii z naseho psani se ji neda nic vytknout, nicmene je mi to k nicemu pac puvodni kod fungoval ve vysledku uplne stejne.
Ja samozrejme chapu, ze se tady pta hromada lam na samozrejme veci, a chteji jednoduche reseni, hned a nejlepe napsat cely kod, aby ho mohli zkopirovat a ulehcit si praci. ja se ptal na jedinou konkretni vec ktera me prekvapila. stacilo odpovedet ne takhle to nejde nebo dela se to tak a tak, a mohli jsme si tuhle celou zbytecnou debatu odpustit.


shaggy:
samozrejme ze to nebude fungovat taky tam chybi konect na databazi, nejake tagy jako head, body, div s nazvem mapy a podobne - to snad neni mozny, tohleto...
shaggy
Profil
Schamann:
to snad neni mozny, tohleto...
Bolo to podpichnutie. Keby si nevymenoval zoznam takmer všetkých existujúcich jazykov, tak by som nemal potrebu rýpať.
Ešte raz opakujem - prečo si na začiatku nenapísal, čo ti nefunguje, tak by si dostal hneď odpoveď a nemusel by si tým zabiť toľko času.

Ja samozrejme chapu, ze se tady pta hromada lam na samozrejme veci, a chteji jednoduche reseni, hned a nejlepe napsat cely kod, aby ho mohli zkopirovat a ulehcit si praci.
A preto si to urobil aj ty? Dostal si od nás radu, ako to urobiť a aj tak si to podla toho nechcel urobiť. Prečo?
Schamann
Profil *
shaggy:
neumim asembler, asp a javu a mraky dalsich veci - a umim s tim zit... :) jen se tu nekteri naznacovali, ze neumim programovat.
v dobe kdy jsem to psal uz jsem to cele mel hotove a funkcni, me jen prekvapilo proc nejde udelat marker1 marker2 jako v PHP konstrukci marker" . $d . " pomoci javascriptu (ocekaval jsem, ze neco jako marker + i, by mohlo fungovat)
pokud se podivas na muj prvni - uvodni dotaz je to tam napsane dle meho nazoru zcela konkretne.
_es
Profil
Schamann:
me jen prekvapilo proc nejde udelat marker1 marker2 jako v PHP konstrukci marker" . $d . " pomoci javascriptu
Rozumní radci ti predsa rozumne radili, že na prístup k nejakej hodnote cez celé číslo je vhodné použiť pole. V akom jazyku, z tých čo si vymenoval, že vraj ovládaš, sa na to nepoužíva pole, ale nejaké obskúrne generovanie názvov premenných?
Amunak
Profil
Schamann:
Kdybys skutečně uměl (alespon základy) z některého z těch jazyků, jen těžko bys mohl mít problém s něčím takovým jako je pole. Vytvoření a práce s polem v PHP i JS je (třeba oproti C) docela hračka. V PHP místo příšerného ${"marker" . $d} můžeš prostě použít $marker[$d]. V JS obdobně můžeš použít var marker = []; marker[d]. V Céčku by asi bylo nejvhodnější použít pole structů, což by rozhodně nevyšlo na jeden, resp. dva řádky, jako tyhle příklady v PHP (JS)
Chamurappi
Profil
Reaguji na Schamanna:
kvuli tomu jsem nasel ten druhej prispevek kde se nekdo ptal proc mu ty puntiky neukazujou infowindow spravne
Ten má problém s rozsahem platnosti proměnných. Zjednodušeně jde o to, že:
var x = [];
for(var i = 0; i < 4; i++)
{
  x[i] = function() { alert(i) };
}
alert(x[2]);
… toto zahlásí 4, protože proměnná i v době zavolání už nabývá jiné hodnoty. Jedno z možných řešení je, že se nepoužije cyklus, ale všechno se ručně (či serverem) nakopíruje a namnoží se všechny proměnné. Počítal jsem s tím, že máš podobný problém jako on. Poradil bych ti, abys místo kopírování použil tuto fintu:
var x = [];
for(var i = 0; i < 4; i++) (function(i)
{
  x[i] = function() { alert(i) };
})(i);
alert(x[2]);
Lokální i uvnitř funkce si uchová hodnotu vnějšího i. S tímhle mívá dost lidí problém, bylo legitimní předpokládat, že patříš mezi ně, což bych rozpoznal z okolního kódu a ze souvislostí, které ses zdráhal popsat.

Ostatní diskutující zde zase předpokládali, že neumíš pracovat s poli a objekty/strukturami, protože spousta začátečníků chce sestavovat název proměnné jako řetězec právě kvůli tomu. Takže ti také chtěli poradit konkrétní postup na konkrétní problém a vysvětlit ti, proč nemáš chtít, co chceš.

stacilo odpovedet ne takhle to nejde nebo dela se to tak a tak
Ono to víceméně jde. Postup naznačil na první straně ve čtvrtém příspěvku pako, jde použít globální objekt window a uvědomit si, že ke členům objektu jde přistupovat nejen skrz objekt.člen, ale i přes objekt["člen"]. Takže si můžeš název člena v globálním objektu (který se chová skoro přesně jako globální proměnná) sestavit jako řetězec, spojit "marker" + i. Ale je to hnusné (byť většinou funkční), mnohem rozumnější by bylo použít místo window nějaké své vlastní pole či objekt.

Ovšem stejně nevím, jak by ti tato odpověď pomohla. Stále totiž nechápu, co jsi vlastně chtěl s těmi proměnnými dělat. Z toho, co jsi zatím ukázal, potřebuješ jen jednu proměnnou marker, nehledě na to, kolik markerů chceš do mapy přidat. Nemá moc smysl generovat v JS rozdílné názvy proměnné, ono to v tomto případě nemá smysl ani v PHP.

jen se tu nekteri naznacovali, ze neumim programovat
Ty jsi zase naznačoval, že při programování vznikají zvláštní situace bezdůvodně. Což znělo poněkud neprogramátorsky. Skoro až pohádkově.

mohli jsme si tuhle celou zbytecnou debatu odpustit
Nebyla zbytečná. Až se za 30 let s JavaScriptem potkáš znovu, bude se ti hodit, co ses dnes dozvěděl :-)
Schamann
Profil *
Chamurappi
Stále totiž nechápu, co jsi vlastně chtěl s těmi proměnnými dělat.

Ja s nimi nechtel nic delat - chtel jsem jen docilit tohoto vysledku:

var marker1 = new google.maps.Marker({
map: map,
position: new google.maps.LatLng(37.789879, -122.390442)
});
var marker2 = new google.maps.Marker({
map: map,
position: new google.maps.LatLng(37.787814,-122.40764)
});
var marker3 = new google.maps.Marker({
map: map,
position: new google.maps.LatLng(37.767568,-122.391665)
});

google.maps.event.addListener(marker1, 'click', onMarkerClick);
google.maps.event.addListener(marker2, 'click', onMarkerClick);
google.maps.event.addListener(marker3, 'click', onMarkerClick);

kde je marker1, 2 a 3 definovany. hotovo smitec. Co je v tom k nepochopeni? to, ze to LZE udelat jinak neresim. v danou chvili mi to takhle fungovalo a ja dhtel docilit stejneho vysledku.
udelat to pres PHP umim, obejit to taky umim, udelat to jinak uz ted taky umim. :)
tvoje finta by mi pravdepodobne nepomoha, protoze jeji implemntace by zabrala v danou chvili vic casu nez jsem byl ochoten investovat.
udelat husne var "marker" + i jsem dost pravdepodobne taky zkousel. proc a jestli mi to neslo v danou chvili uz ted nevim. treba bylo spatne neco uplne jineho.
pokud je tedy var "marker" + i resni meho dotazu pak dekuji vemlice pjekne, ale nejblizsich 30 let to opravdu nemam v planu pouzit. :) A vy muzete byt radi ze nemusite odpovidatna hloupe dotazy nejakeho pohadkare.

jen pro zajmavost vysledek vaseho snazeni - myslim ze je poartna i precizni prace s polem :D
function setMarkers(map, PoleMarkers) {
        //---- vypsani markeru
          for (var i = 0; i < PoleMarkers.length; i++) {           
            var JedenMarker = PoleMarkers[i];
            var image = {
                url: JedenMarker[4],                               
            };                    
            var myLatlng = new google.maps.LatLng(JedenMarker[1],JedenMarker[2]);              
            var marker = new google.maps.Marker({
                position: myLatlng,
                map: map,     
                icon: image,
                title: JedenMarker[3]
            });
            var popis = '<iframe id=iframegoogleokno width=250 scrolling=auto height=100 frameborder=0 src=\'iframe_bubina.php?souradniceA='+JedenMarker[1]+'&souradniceB='+JedenMarker[2]+'&gps='+JedenMarker[0]+'\' ></iframe>';
            attachMessage(marker, popis);     
          }     
        } //----
        function attachMessage(marker,Message) {
         var message = Message;    
         var infowindow = new google.maps.InfoWindow({
            content: message                  
         });                          
         google.maps.event.addListener(marker, 'click', function() {
            infowindow.open(marker.get('map'), marker);
         });    
       }    

mimochodem duvod proc me to neotviralo ty infowindow byl predposledni radek : infowindow.open(marker.get('map'), marker); kde jsem mel infowindow.open(map, marker); a uz vubec me nezajima proc to neslo, proste to tak jde a to mi staci
_es
Profil
Schamann:
kde je marker1, 2 a 3 definovany. hotovo smitec. Co je v tom k nepochopeni?
Trebárs to, že si chcel premenných 100 a nakoniec ti stačia 3.

duvod proc me to neotviralo ty infowindow byl predposledni radek : infowindow.open(marker.get('map'), marker); kde jsem mel infowindow.open(map, marker); a uz vubec me nezajima proc to neslo, proste to tak jde a to mi staci
To len tak „naslepo“, bez naštudovania dokumentácie ku knižnici, ktorú si sa rozhodol použiť, skúšaš, aké metódy má k dispozícii a si prekvapený, že si sa do ich názvu a použitia netrafil?
Amunak
Profil
Schamann:
Co ti brání použít jen jednu proměnnou marker?

var marker;
marker = new google.maps.Marker({
  map: map,
  position: new google.maps.LatLng(37.789879, -122.390442)
});
google.maps.event.addListener(marker, 'click', onMarkerClick);
marker = new google.maps.Marker({
  map: map,
  position: new google.maps.LatLng(37.787814,-122.40764)
});
google.maps.event.addListener(marker, 'click', onMarkerClick);
/* ... */
Ideálně to budeš mít celé v cyklu, kterému jen předáš ty souřadnice, protože je zbytečné kopírování i tohle. Ale takto se přinejmenšíš zbavíš toho problému, který od začátku řešíš.

tvoje finta by mi pravdepodobne nepomoha, protoze jeji implemntace by zabrala v danou chvili vic casu nez jsem byl ochoten investovat.
Gratuluji, ve výsledku se ti povedlo vložit do toho mnohem víc svého (i našeho) času, než bylo nutné.
Sir Tom
Profil
Schamann:
zobrazene souradnice si nacitam z databaze, pokazde jsou jine a pokazde jich je jiny pocet
Všimni si prosím, že taháš data z databáze.

for($d=0; $d < 3; $d++ ){
A zde již do cyklu, ale už nedáváš počet vrácených řádků (např. mysql_num_rows), ale nějaké číslo - 3. Proč?

Tak či tak, nepřesvědčil jsi mne (a patrně nikoho), že programovat umíš. Možná umíš všechny myslitelné jazyky, ne-jazyky, ale bohužel pro tebe zde neplatí že kvantita = kvalita.

Silně pochybuji, že umíš běžné programátorské postupy nezávisle na jazyku - že např. znáš OOP (víš, co to vůbec znamená?), nebo Návrhové vzory.
Tvůj přístup k problému je takový, že prostě chceš, aby to fungovalo a je ti úplně ukradené, jak to funguje. Když už jsme u těch analogií: Potřebuji natřít okna - těch oken mám na domě celkem 5. Koupím 100 s plechovek s barvou?

Bohužel tvůj přístup a "programátorské" zvyky jsou velmi slabé a "snižují" práci těch profesionálů.

Pokud programuješ už 20 let, tak to ber jako zbytečné promrhání času svého života. Spousta lidí programuje kratší dobu, ale umí toho mnohem více.

Na začátku jsi položil dotaz a slušnou formou ti bylo zodpovězeno, že tvé potencionální řešení je nevhodné a bylo ti i vysvětleno proč. Jako bonus ti bylo nabídnuto standardní řešení tvého problému.

Vůbec celé to tvé vyjadřování je takové zmatečné - nejenže, ani neumíš pořádně jazyky, také ani neumíš pořádně strukturovat text, nedodržuješ čárky, tečky, apod. V průběhu diskuze, se snažíš pak už jenom poukázat na to, že tě to jenom "zajímá", čili zakrýt svoji nevědomost a tvrdošíjnost.

Odpovědi jsi dostal. Já jsem tě ještě na začátku diskuze nabádal, že to nejde (tzn. nedělej to), ale evidentně si to ignoroval. Komu není rady, tomu není pomoci. Vezmi si z této diskuze jen to, co potřebuješ, a už na tyto stránky v budoucnu nechoď - bude to lepší i pro tebe.

PS. A ano - tento text je útočný a neskrývá kritiku tvé osoby.
Schamann
Profil *
Sir Tom:
to ze nectete o cem pisu a ze to vytrhnete z kontextu jednu vetu: „for($d=0; $d < 3; $d++ ){“ svedci cosi o vas... OOP je odjakziva Organizace pro Osvobozeni Palestiny :D

Public Function GoHome () as Boolean
Dim oMameSchody as Boolean
Dim oMameVytah as Boolean

oMameSchody = True
oMameVytah = True

If oMameSchody Or oMameVytah Then
GoHome = True
else
GoHome = False
End If
End Fiunction

Pujdes domu po schodech nebo vytahem. Ja chodim po schodech, jestlize se rozhodnes jet vytahem je to tvuj problem. V tomto pripade budeme doma oba. Ktera cesta je spatna, horsi?
RockFire
Profil
Schamann:
Nějak jsem nepochopil smysl toho kódu, který ještě k tomu obsahuje chybu.
Ernest2F
Profil
<html xmlns="[url=http://www.w3.org/1999/xhtml]http://www.w3.org/1999/xhtml[/url]">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<script type="text/javascript">

// nejake pole s daty 0-2 ' jde o jmena
var myA = new Array();
myA[0] = "Martin";
myA[1] = "Michal";
myA[2] = "Marek";


// cyklus s dyn. prirazenim do prom prom1, prom2 ... promN
for(i=0;i<3;i++){
this["prom"+i] = myA[i];
}

</script>
</head>

<body>
<script type="text/javascript">

// vypis prom1 .. promN .. document.write snad jsem to pochopil ?
for(i=0;i<3;i++){
document.write(this["prom"+i]+"<br>");
}
</script>

</body>
</html>

Moderátor juriad: Vkládej prosím kódy mezi značky [pre] a [/pre] (stačí kliknout na ).
juriad
Profil
Jako funguje to: Živá ukázka, ale má to řadu problémů.
1) this odkazuje na window; zanášíš si globální prostor; můžeš si omylem přepsat nějaké proměnné.
2) Používání var ti nejspíš nic neříká, co?
3) Nikdy nepotřebuješ vytvářet proměnné dynamicky, vždy si vystačíš s polem.

Chceš-li se o tom bavit víc, navrhni nadpis a já z [#26] vytvořím nové vlákno.
« 1 2

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:

0