Variabelen
Inleiding¶
Variabelen zijn een van de fundamentele bouwstenen in JavaScript en zijn essentieel om gegevens in je programma op te slaan en te manipuleren. Een variabele werkt als een container waarin je informatie kunt bewaren, zoals getallen, tekst of andere gegevens. Met variabelen kun je je code flexibeler en dynamischer maken.
Declaratie van variabelen¶
In JavaScript kun je variabelen declareren met de sleutelwoorden var
, let
en const
. Elk van deze heeft een specifieke rol en gebruikscontext:
-
var
: Wordt gebruikt om variabelen te declareren in oudere JavaScript-versies. Het heeft een functionele scope, wat betekent dat het alleen binnen de functie waarin het is gedeclareerd beschikbaar is. In moderne code wordtvar
vaak vermeden. -
let
: Wordt gebruikt om variabelen te declareren met een blokscope. Dit betekent dat de variabele alleen beschikbaar is binnen het blok waarin deze is gedefinieerd, zoals binnen een lus of een functie.let
biedt meer controle en is veiliger in gebruik danvar
. -
const
: Wordt gebruikt om constante variabelen te declareren, waarvan de waarde niet kan worden herassigned. Het heeft ook een blokscope en wordt vaak gebruikt voor waarden die niet mogen veranderen.
Enkele voorbeelden¶
let leeftijd = 25; // Variabele met een veranderlijke waarde
const naam = "Jan"; // Constante waarde
console.log(naam); // Output: Jan
console.log(leeftijd); // Output: 25
leeftijd = 26; // Bijwerken van de waarde van leeftijd
console.log(leeftijd); // Output: 26
// const naam = "Piet"; // Dit zal een fout veroorzaken omdat const niet kan worden geüpdatet
Variabelen maken het ook mogelijk om berekeningen uit te voeren en gegevens te combineren:
let a = 10;
let b = 20;
let som = a + b; // Resultaat is 30
console.log(`De som van ${a} en ${b} is ${som}`); // Output: De som van 10 en 20 is 30
Hoe verschillen variabelen in JavaScript van variabelen in C#?¶
Hoewel variabelen in zowel JavaScript als C# bedoeld zijn om gegevens op te slaan, zijn er enkele belangrijke verschillen:
Dynamisch versus statisch typen¶
- JavaScript is een dynamisch getypeerde taal, wat betekent dat de datatypes van variabelen automatisch worden bepaald tijdens runtime. In C# is typen statisch, wat betekent dat je expliciet moet aangeven welk type gegevens een variabele opslaat (bijv.
int
,string
).
let x = 42; // Dynamisch type in JavaScript
x = "Hallo"; // Geldig: het type kan veranderen
// In C#:
int x = 42; // Statisch type
x = "Hallo"; // Ongeldig: type mismatch
Scope en gebruik¶
In JavaScript is de scope van een variabele afhankelijk van de declaratie met var
, let
of const
. var
heeft functionele scope, terwijl let
en const
blokscope hebben. In C# hebben variabelen meestal blokscope en moeten ze binnen een methode of klasse worden gedeclareerd.
{
let y = 10; // Blokscope in JavaScript
}
console.log(y); // Fout: y bestaat niet buiten het blok
// In C#:
{
int y = 10; // Blokscope in C#
}
Console.WriteLine(y); // Fout: y bestaat niet buiten het blok
Constanten¶
In JavaScript gebruik je const
om een constante te declareren. In C# gebruik je const
of readonly
, afhankelijk van of de waarde op compile-time of runtime wordt ingesteld.
const PI = 3.14; // JavaScript constante
// In C#:
const double PI = 3.14; // Constante waarde op compile-time
readonly double radius; // Runtime constante (bijv. ingesteld in een constructor)
Typebeperkingen¶
In C# worden variabelen strikt gecontroleerd op type, wat betekent dat je fouten bij het toewijzen van een verkeerd type direct detecteert. JavaScript biedt meer flexibiliteit, maar dat kan leiden tot bugs door onbedoelde typewisselingen.