Trädvy Permalänk
Medlem
Registrerad
Apr 2016

javascript enkel array

Hej
Ursäkta med språket. Jag är inte svensk man.
Jag är helt nybörjare inom javascript.
Jag har enkel problem med array

<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Ovn3_3</title> </head> <body> <script> var ​stader = new Array(); stader[0] = "London"; stader[1] = "Paris"; stader[2] = "Rom"; stader[3] = "Kiev"; stader[4] = "Prag"; stader[5] = "Berlin"; for(var i=0; i<=stader.length; i++){ document.write("Stader: " + stader[i]); } </script> </body> </html>

Det är min kod. När jag startar html fil, internet visar ingenting. Felsökare säger SCRIPT1014 invalid character (9,5) Men jag förstår inte felsignalen. Jag tror 9 betyder raden 9 men vad är 5??? Vad är fel?? Vad betyder SCRIPT1014??
Eftersom jag har läst java ganska mycket så vet jag att man kan skapa array

var stader= new Array(alla städer);

Men i uppgiften står att jag måste göra så som jag skrev först.

Trädvy Permalänk
Medlem
Plats
SweClockers forum
Registrerad
Aug 2012

Du har lyckats få in ett zero-width space innan stader på rad 9. Ta bort det så fungerar resten av din kod.

Kom även ihåg att Javascript är helt skilt från Java. I Javascript kan du förutom som du gjort nu tilldela värden direkt antingen som argument till konstruktorn eller med brackets.

Guide: Roota din HTC - BB-Kod-knappar på Prisjakt

              Min burk - Kvävekyld till 80%
8700K@stock
1070 Ti@stock

Ibland har jag fel, men då är det någon annans fel.

Trädvy Permalänk
Medlem
Registrerad
Apr 2016
Skrivet av LemonIllusion:

Du har lyckats få in ett zero-width space innan stader på rad 9. Ta bort det så fungerar resten av din kod.
http://i.imgur.com/eT5fKBD.png

Kom även ihåg att Javascript är helt skilt från Java. I Javascript kan du förutom som du gjort nu tilldela värden direkt antingen som argument till konstruktorn eller med brackets.
http://i.imgur.com/siNRmGS.png

Aha tack! Men jag förstår inte vad betyder var & # 8203;​ som ligger innan stader? Jag har provat att skriva det innan stader på rad 9 men webbläsare nu säger Expected identifier på samma rad.

Trädvy Permalänk
Medlem
Plats
SweClockers forum
Registrerad
Aug 2012
Skrivet av ProgrammeringElev:

Aha tack! Men jag förstår inte vad betyder var & # 8203;​ som ligger innan stader?

var är nyckelordet som används för att deklarera en ny variabel i Javascript och ska vara där. &#8203; däremot är unicode-tecknet zero-width space. Jag har ingen aning om hur du lyckats få dit det, men det ska definitivt inte vara där.

Citat:

Jag har provat att skriva det innan stader på rad 9 men webbläsare nu säger Expected identifier på samma rad.

Den säger Expected identifier för att den väntar sig ett variabelnamn (identifier), men den hittar ett zero-width space, vilket inte är ett giltigt tecken för en identifier. Det står mellan mellanslaget och s:et på rad 9 och du borde kunna ta bort det som vilket annat tecken som helst, bara att du inte ser att du gör det.

Guide: Roota din HTC - BB-Kod-knappar på Prisjakt

              Min burk - Kvävekyld till 80%
8700K@stock
1070 Ti@stock

Ibland har jag fel, men då är det någon annans fel.

Trädvy Permalänk
Medlem
Registrerad
Apr 2016
Skrivet av LemonIllusion:

var är nyckelordet som används för att deklarera en ny variabel i Javascript och ska vara där. &#8203; däremot är unicode-tecknet zero-width space. Jag har ingen aning om hur du lyckats få dit det, men det ska definitivt inte vara där.

Den säger Expected identifier för att den väntar sig ett variabelnamn (identifier), men den hittar ett zero-width space, vilket inte är ett giltigt tecken för en identifier. Det står mellan mellanslaget och s:et på rad 9 och du borde kunna ta bort det som vilket annat tecken som helst, bara att du inte ser att du gör det.

Tack för snälla svar! Jag har löst problem med att lägga till arrays length när man skapar array. Nu det visar bra

Trädvy Permalänk
Medlem
Plats
i din garderob
Registrerad
Sep 2007
Skrivet av ProgrammeringElev:

Tack för snälla svar! Jag har löst problem med att lägga till arrays length när man skapar array. Nu det visar bra

Det är fint att du löst ditt problem men array.length har ingenting med lösningen att göra.

Problemet var att du hade fått in ett osynligt tecken i din textfil mellan orden var ​stader på rad nio. Du har förmodligen skrivit om den raden nu och då fungerar det.

Bilanaloger är som Volvo — varenda svenne kör med dem

Trädvy Permalänk
Medlem
Plats
Knivsta
Registrerad
Nov 2002

Inget svar på din fråga som redan är löst, men lite tips på andra sätt att deklarera arrayer och loppa igenom dom.

Ett renare och snyggare sätt att skriva arrayer på är

var myArray = ['ett', 'två', 'tre'];

Sen kan du skriva om ditt exempel till

var myArray = ['ett', 'två', 'tre']; myArray.forEach(function(item) { document.write(item); });

Webb -och apputvecklare på Greater Than AB
Min hemsida | Frilansutvecklaren | LinkedIn profil.
Hemdator: Thinkpad T410S | Jobbdator: Microsoft Surface Pro 4 | Mobil: Samsung S7 Edge.