Archiv verlassen und diese Seite im Standarddesign anzeigen : [JS] Will mich verarschen
M@tes
2004-12-12, 12:37:24
Ok muss am Anfang sagen, das ich ein JS Anfänger bin.
Ich will eine einfache Addition ausführen:
s = s +1;
stat jetzt zu rechnen:
s = 1 +1; (=2)
macht der folgendes:
s = 1 +1; (=11)
Haut man das ganze in eine Schleife, kommt folgendes heraus:
111111,...
Also der addiert es nciht, sondern hängt die 1 immer hinten dran.
Wie kann ich das umgehen?
s = s++;
tut auch nicht.
MadMan2k
2004-12-12, 12:40:26
du hast keinen anfangswert für s definiert, darum nimmt er an s wäre ein leerer string.
mach einfach mal ein "s = 0;"
vor der Gleichung;
M@tes
2004-12-12, 13:04:12
Naja s ist in dem sinne schon definiert:
s = counter.title;
counter.title = s +1;
...
<div id="counter" title="0">
Das komische ist:
counter.title = s -1;
geht :P
clm[k1]
2004-12-12, 13:51:09
Das problem ist das er denkt das wäre ein string!
der + operator ist nicht nur zum addieren da, der wird auch zum konkatenieren von strings verwendet!
kannst ja mal so versuchen: s = (s * 1) + 1;
dann sollte er eigentlich realisieren das s kein string ist.
tja, javascript ist wirklich abartig - nicht nur wegen der ungetypten variablen.
sondern vor allem weil jeder browser seine eigene implementierung hat.
gruß
clm[k1]
MadMan2k
2004-12-12, 13:52:35
jo, counter.title ist ein string und '+' ist auch ein string verknüpfungs operator :)
M@tes
2004-12-12, 14:52:24
cool es funtzt mit dem s = (s * 1) + 1; :smile:
Danke
hättest denn String mit "parseInt()" auch zu einer Zahl machen können.
[TMP]Peds X-ing
2004-12-13, 15:52:05
s = Number(s) + Number(1);
So sollte das gehen.
Macht der diesen Blödsinn auch, wenn du s+=1 machst?
M@tes
2004-12-13, 16:14:24
Peds X-ing']s = Number(s) + Number(1);
So sollte das gehen.
Macht der diesen Blödsinn auch, wenn du s+=1 machst?
Ja. Kannte den Befehl aus der Perlprogrammiersprache, aber das ergab den gleichen Effekt :frown:
vBulletin®, Copyright ©2000-2025, Jelsoft Enterprises Ltd.