/ Forside / Teknologi / Udvikling / Java Scripts / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Java Scripts
#NavnPoint
molokyle 5410
Klaudi 2799
smorch 2439
kim 1360
Harlekin 1134
bentjuul 984
gibson 800
severino 695
Random 675
10  konsulent.. 626
If > ???
Fra : Jens Vestergaard


Dato : 22-01-03 17:54

Hejsa,
Som Visual Basic-mand er JavaScript ved at drive mig vanvittig (ikke et ondt
ord om sproget, det er bare mig, der ikke fatter det...)

Dette lykkes IKKE:

var sig = new Array([med 5 streng-elementer])
var signr = 1
function Sk() {
if (signr > sig.lenght) {
signr = 1
}
document.pix.src = sig[signr]
signr = signr + 1
}

Som det fremgår, vil jeg have funktioner til at 'cykle' mellem 5
billedelementer ved at tælle signr en op - og ned igen, når den er nået til
array'ens upper bound, men if-sætningen bliver aldrig sand, og signr bliver
aldrig nulstillet.

Hvis jeg erstatter udtrykket sig.lenght med 5, lykkes det:

var sig = new Array([med 5 streng-elementer])
var signr = 1
function Sk() {
if (signr > 5) {
signr = 1
}
document.pix.src = sig[signr]
signr = signr + 1
}

Men hvorfor kan jeg ikke bruge en variabel (eller kan jeg) i if-sætningen?
Jeg har også prøvet med
var t = sig.length som første linie i funktioner og så brugt t i
if-sætningen, men uden held. Hvis jeg tester med
alert(sig.lenght) returneres ganske rigtigt 5.

Hvad overser jeg?

--
mvh
Jens Vestergaard (mailadr i dette indlæg er ikke gyldig!)
www.railsoft.dk
Døgnets jernbanenyheder: www.railsoft.dk/medier.asp



 
 
Jens Gyldenkærne Cla~ (22-01-2003)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 22-01-03 18:04

Jens Vestergaard skrev:

> if (signr > sig.lenght) {

Stavefejl - prøv med sig.length...

> Hvad overser jeg?

Den slags fejl er lette at lave. Men du burde nu også kunne finde
dem med en javascript-debugger, fx den indbyggede i Mozilla.
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

Jens Vestergaard (22-01-2003)
Kommentar
Fra : Jens Vestergaard


Dato : 22-01-03 18:15

"Jens Gyldenkærne Clausen" <jens@gyros.invalid> skrev i en meddelelse
news:Xns930BB7B554A5Ajcdmfdk@gyrosmod.dtext.news.tele.dk...
> Jens Vestergaard skrev:
>
> > if (signr > sig.lenght) {
>
> Stavefejl - prøv med sig.length...

Desværre kun stavefejl i mailen - i scriptet er det stavet rigtigt - men
virker altså ikke.

Men tak alligevel

--
mvh
Jens Vestergaard (mailadr i dette indlæg er ikke gyldig!)
www.railsoft.dk
Døgnets jernbanenyheder: www.railsoft.dk/medier.asp



Jens Gyldenkærne Cla~ (22-01-2003)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 22-01-03 18:25

Jens Vestergaard skrev:

> Desværre kun stavefejl i mailen - i scriptet er det stavet
> rigtigt - men virker altså ikke.

Hm - kan vi ikke se scriptet som du har det stående (klippe-
klistre). Er du stensikker på at der ikke er andre stavefejl eller
lignende?
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

Lasse Reichstein Nie~ (22-01-2003)
Kommentar
Fra : Lasse Reichstein Nie~


Dato : 22-01-03 18:31

"Jens Vestergaard" <j@railsoft.dk> writes:

> Hvad overser jeg?

Arrays starter fra 0, ikke 1. Et array med længde 5 har indicerne 0 til 4.
Det forklarer dog ikke hvorfor sig.length og 5 ikke er det samme.

(Har set at length kun er stavet forkert her og ikke i koden. Tjek
alligevel for stavefejl, du er næsten konsekvent med din "lenght" :)).

Som foreslået, prøv det i Mozilla og se hvad javascript-konsollen siger
er galt. Den er den bedste javascript-debugger jeg kender, Operas er
også brugbar.

Eller bliver vi nok nødt til at se den rigtige kode for at kunne sige
mere.

/L
--
Lasse Reichstein Nielsen - lrn@hotpop.com
'Faith without judgement merely degrades the spirit divine.'

Jens Vestergaard (22-01-2003)
Kommentar
Fra : Jens Vestergaard


Dato : 22-01-03 18:50

"Lasse Reichstein Nielsen" <lrn@hotpop.com> skrev i en meddelelse
news:n0lt852x.fsf@hotpop.com...
> "Jens Vestergaard" <j@railsoft.dk> writes:
>
> > Hvad overser jeg?
>
> Arrays starter fra 0, ikke 1. Et array med længde 5 har indicerne 0 til 4.
> Det forklarer dog ikke hvorfor sig.length og 5 ikke er det samme.
>

Ja - det var jo også en fejlkilde. Men så lærte jeg det!

Og ja! Der var naturligvis en (anden) stavefejl i det oprindelige script.
Næste geng, jeg spørger her, skal jeg nok lave copy/paste...

Tak!

--
mvh
Jens Vestergaard (mailadr i dette indlæg er ikke gyldig!)
www.railsoft.dk
Døgnets jernbanenyheder: www.railsoft.dk/medier.asp




Søg
Reklame
Statistik
Spørgsmål : 177552
Tips : 31968
Nyheder : 719565
Indlæg : 6408847
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste