Javascript begynder hjælp

Tags:    javascript

<< < 12 > >>
Hey udviklere.

Sidder og lære lidt javascript på http://www.codecademy.com/ og det går ellers fint, har bare et lille spørgsmål.

Når jeg tager kurset og f.eks vil definere en variable, så laver den ingen forskel på om jeg definere en variable ved. Altså den siger at begge metoder er ok, men er ikke helt sikker på om dette er rigtigt? Skal der var eller ej foran en variable definition?

age = prompt ("What is your age?");

var age = prompt ("What is your age?");

På forhånd tak :P



13 svar postet i denne tråd vises herunder
3 indlæg har modtaget i alt -10 karma
Sorter efter stemmer Sorter efter dato
Forskellen på "Var" eller ikke "Var" er stedet (også kaldet scope), at du definerer din variabel.

Hvis du skriver "age = prompt....", vil den kigge om der er en lokal defineret version i dit scope og tildele prompt værdien til den. Hvis ikke, defineres en global variabel med værdien.

Ps! Der er garanteret en meget dybere forklaring også, hvilket jeg ikke kan give dig. Det vil nok også forvirre mere på dit nuværende niveau.



Indlæg senest redigeret d. 23.05.2013 09:13 af Bruger #9814
While- og for-loops har ikke eget scope...

scope kan frit oversættes til "ejendomsretten" eller "tilhørsforhold" på en variabel. Og scopes kan kun ændres fra objekter eller funktioner.

Fold kodeboks ind/udJScript kode 




Indlæg senest redigeret d. 23.05.2013 11:39 af Bruger #10216
Når du skriver
var age = prompt ("What is your age?");
Så skaber du en ny variabel som hedder age.

Skriver du bare
age = prompt ("What is your age?");
vil den fejle da age ikke eksisterer, medmindre du skabte variablen tidligere i din kode med var foran.


Nej. Der vil ikke opstå en eksekveringsfejl.

edit:
Suk. Minus givet fra en, som er for stædig til at indse man tager fejl.




Indlæg senest redigeret d. 23.05.2013 12:12 af Bruger #955
Tak for det hurtige svar brian. Hmm, kan du måske uddybe det lidt mere?

Tror ikke helt at jeg forstår det, sorry :|



Jeg tror du vil forstå det, når du kommer videre med f.eks. at lave functions. Lad være med at tænke så meget over det lige nu er mit bud.



Du kan også object orientere dit javascript ved at smide det ind i et array.

Øh hvad ?



Du kan også object orientere dit javascript ved at smide det ind i et array.

EDIT:
Du kan også object orientere dit javascript ved at smide det ind i et array.

Øh hvad ?


Eksempelhvis, det var bare essentielt.

Fold kodeboks ind/udJScript kode 


Hvad har det med et array at gøre?

Et array er en betegnelse for en variabel der indeholder en række af værdier, associeret med en nøgle.



Du kan også object orientere dit javascript ved at smide det ind i et array.

EDIT:
Du kan også object orientere dit javascript ved at smide det ind i et array.

Øh hvad ?


Eksempelhvis, det var bare essentielt.

Fold kodeboks ind/udJScript kode 

Det er altså ikke et Array, men et objekt.



Når du skriver
var age = prompt ("What is your age?");
Så skaber du en ny variabel som hedder age.

Skriver du bare
age = prompt ("What is your age?");
vil den fejle da age ikke eksisterer, medmindre du skabte variablen tidligere i din kode med var foran.


Nej. Der vil ikke opstå en eksekveringsfejl.

edit:
Suk. Minus givet fra en, som er for stædig til at indse man tager fejl.


Nej minus fra en der mener det er flabet at konstatere noget uden en forklaring (:



Fold kodeboks ind/udJScript kode 


EDIT: Som dan og Michael også skriver, så ændrer while-løkker ikke scope (my bad), men kun hvis du kører funktioner eller arbejder på objekter.



Indlæg senest redigeret d. 24.05.2013 09:10 af Bruger #8782
<< < 12 > >>
t