Avatar billede amoelle Nybegynder
21. juli 2005 - 14:38 Der er 16 kommentarer og
1 løsning

hvorfor er der syntaxfejl i linie 8 og ikke i linie 15

Hej,
når jeg kører følgende stump Javascript gennem en syntax checker får jeg to fejl for linie 8, men ikke for linie 15.
Hvad skyldes det, og hvad er der galt ??
.... der er måske fejl i syntaxcheckeren ;-).....

Hvis jeg indsætter kodestumpen i en HTML side, vises denne fint i IE uden fejlmeddelelser.

mvh Anne


1:    Missing symbol or operator between identifiers or literals (or space in identifier)....
2:    ')' expected


<html><head></head>
<body>
<script type="text/Javascript">
function gigR1(cc,dd) {
    this.cc = cc;
    this.dd = dd;
}
gigobj = new gigR1(2,'tekst');

function gigR(b,c,d) {
    this.b = b;
    this.c = c;
    this.d = d;
}
gigobj2 = new gigR(2,2,'tekst');
</script>
</body>
</html>
Avatar billede testpilot_dk Nybegynder
21. juli 2005 - 14:44 #1
Det er fordi at du ikke må bruge tal i dine funktions navne ???

Det kunne det være
Avatar billede roenving Novice
21. juli 2005 - 14:45 #2
Hvad er det for en syntaks-checker, som ikke anerkender javascript-objekter ?-)

Prøv dette (og det virker også i Mozilla !-)

<html><head></head>
<body>
<script type="text/Javascript">
function gigR1(cc,dd) {
    this.cc = cc;
    this.dd = dd;
}
gigobj = new gigR1(2,'tekst');

function gigR(b,c,d) {
    this.b = b;
    this.c = c;
    this.d = d;
}
gigobj2 = new gigR(2,2,'tekst');

alert(gigobj.dd + "\n" + (gigobj2.b+1));
</script>
</body>
</html>
Avatar billede roenving Novice
21. juli 2005 - 14:46 #3
>>testpilot

-- det er noget vrøvl, da man ikke må starte en javascript-identifikator med et tal, men ellers gerne må bruge det i sådanne !-)
Avatar billede testpilot_dk Nybegynder
21. juli 2005 - 14:48 #4
Okay, så lærte jeg også noget nyt!

Jeg troede det galt hele funktions navnet!

Men tak for det
-> roenving

:)
Avatar billede roenving Novice
21. juli 2005 - 14:50 #5
Javascript-identifikatorer må bestå af:

a-z og _, som identifikatoren gerne må starte med, samt 0-9 !-)
Avatar billede testpilot_dk Nybegynder
21. juli 2005 - 14:50 #6
Men hvori lå fejlen så!
Avatar billede roenving Novice
21. juli 2005 - 14:51 #7
-- og kommaerne var af hensyn til den dænsgæ sprov ...
Avatar billede roenving Novice
21. juli 2005 - 14:51 #8
Der er fejl i syntaks-checkeren ...
Avatar billede testpilot_dk Nybegynder
21. juli 2005 - 14:53 #9
Okay!

Sikke meget jeg har lært nu :P
Avatar billede testpilot_dk Nybegynder
21. juli 2005 - 14:54 #10
amoelle

Afvis lige mit svar, roenving er korrekt på den!

roenving har fortjent point
Avatar billede amoelle Nybegynder
21. juli 2005 - 14:58 #11
Tak for en masse hurtige svar :-)
Syntaxcheckeren hedder ScrypTik
Jeg prøver lige roenvings tip
Avatar billede roenving Novice
21. juli 2005 - 15:02 #12
Iøvrigt kan det være lidt forvirrende engang imellem, da både html- og css-identifiers må starte med tal og f.eks. indeholde bindestreger og html-tingene må endda indeholde entities, f.eks. id&eacute; (idé)

-- så rådet er, at man altid bruger identifiers, som holder i alle tre kontekster, f.eks. bruger interCap, hvis det er nødvendigt: etTalSomErStort = 198723465445 !-)

-- els velbekomme '-)
Avatar billede amoelle Nybegynder
21. juli 2005 - 15:10 #13
roenving, - hvad er egentlig forskellen på din og min kode - bortset fra alert'en ?
Avatar billede roenving Novice
21. juli 2005 - 15:13 #14
Ingen !-)

-- det var bare for at illustrere, at det absolut virker !o]
Avatar billede amoelle Nybegynder
21. juli 2005 - 15:58 #15
OK, - det vidste jeg jo i forvejen ;-)
Avatar billede roenving Novice
21. juli 2005 - 16:11 #16
Tak for point ;~}

-- måske ScrypTik skulle have en mail med underretning om programmets problem ?-)
Avatar billede olebole Juniormester
21. juli 2005 - 17:52 #17
<ole>

- og så bør man vel strengt taget returnere objektet fra constructor'en:

function gigR1(cc,dd) {
    this.cc = cc;
    this.dd = dd;
    return this;
}
gigobj = new gigR1(2,'tekst');

/mvh
</bole>
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester