Autor Zpráva
mandark
Profil
Zkuste schválně tohle v Opeře, v Msie a ve FF... V Opeře mi vyskočí jen dva alerty. Opera se pravděpodovně snaží string převést na číselný index a přeteče... Zvláštní taky je, že alert(x['8387287684']) a alert (x['4833921211']) fungují...

<script>
var x=new Object()

x['1414119291']=1
x['8387287684']=1
x['4165639206']=1
x['4833921211']=1

for (c in x) alert (c)
</script>
Joker
Profil
Zjevně se to zkonvertuje na číslo a ta dvě jsou mimo rozsah. Maximální, které ještě projde, je 4772185883
mandark
Profil
Zjevně se to zkonvertuje na číslo

a je to tak dobře nebo ne? :)
peta
Profil
mandark
Joker Zjevně se to zkonvertuje na číslo
Samozrejme. Jmeno objektu nesmi zacinat cislem. To prece rika jasne definice, protoze:
x.jmeno = x['jmeno'];

'123' == 123
Myslim si, ze tento zapis ti fungovat nebude:
x.123
ale
x['123']
x[123]
bude davat vzdy stejny vysledek
navic, x ti zrejme prekonvertuje na array.
los
Profil *
>> Zjevně se to zkonvertuje na číslo
> a je to tak dobře nebo ne? :)
Nie je to tak dobre.
mandark
Profil
díky za odpovědi...

překvapila mě jen rozdílná implementace / fungování mezi prohlížeči..

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