Variabler
En variabel er et navn du fester på en verdi, som en etikett du henger på noe. Når du skriver let name = "Ola", skjer to ting: først opprettes verdien "Ola" i minnet, og så festes etiketten name på den. Variabelen er ikke en boks som inneholder verdien, men et navn som peker på den.
Gode navn gjør koden lesbar
Variabelnavn bør beskrive hva verdien er, ikke hva den gjør i akkurat denne linjen. userAge er bedre enn x, og totalPrice er bedre enn tp.
Endre verdi
Hva tror du skjer når du endrer en variabel som allerede har en verdi? Tenk deg at name peker på "Ola", og så skriver du name = "Kari". Hva peker name på nå, og hva skjer med "Ola"?
Gjett først, og klikk deg gjennom visualiseringen for å se om du hadde rett.
name = "Ola" # etiketten 'name' festes på "Ola"
name = "Kari" # etiketten flyttes til "Kari"
age = 25
price = 99.50
Python har ingen nøkkelord for å lage variabler. Du bare skriver navnet og fester det på en verdi med =. Alle variabler kan flyttes til nye verdier når som helst. Vil du markere at en verdi ikke bør endres, er konvensjonen å bruke STORE_BOKSTAVER, men Python håndhever det ikke.
var name = "Ola" # etiketten 'name' festes på "Ola"
name = "Kari" # etiketten flyttes til "Kari"
const AGE = 25 # const-etiketter kan ikke flyttes
var price = 99.50
GDScript bruker var for variabler du kan flytte, og const for verdier som skal stå fast. Konvensjonen i Godot er å bruke snake_case for variabler og STORE_BOKSTAVER for const.
let name = "Ola"; // etiketten 'name' festes på "Ola"
name = "Kari"; // etiketten flyttes til "Kari"
const age = 25; // const-etiketter kan ikke flyttes
var price = 99.50; // gammel måte, bruk let/const
JavaScript har tre måter å lage variabler på. let lager en etikett du kan flytte til en ny verdi senere. const lager en etikett som er limt fast, du kan ikke flytte den når den først er festet. var er den gamle måten og oppfører seg nesten som let, men med noen forskjeller i hvor variabelen er tilgjengelig. Bruk let og const.
To vanlige misforståelser
= betyr ikke «er lik». I programmering betyr = «fest denne etiketten på denne verdien». Det er en handling, ikke en påstand. Verdien på høyre side evalueres først, og så festes etiketten på resultatet.
En ny verdi erstatter den gamle – den legges ikke til. Hvis du skriver let poeng = 5 og deretter poeng = 10, er poeng nå 10, ikke 15. Etiketten flyttes til en helt ny verdi.