Hoe moet je javascript toevoegen aan een HTML pagina
Met de volgende regel:Voeg de volgende regel toe in de head van je html bestand:
(script src=”script/main.js” defer)(/script)
Strict mode is een speciale javascript modus die we kunnen gebruiken zodat javascript op een strictere manier wordt uitgevoerd.
Dit zorgt ervoor dat we als programmeur betere en minder foutgevoelige code schrijven.
Om een functie in strict mode uit te voeren plaats ‘use strict’; helemaal bovenaan in de body van de functie.
Om een bestand in strict mode uit te voeren plaats ‘use strict’; helemaal bovenaan het bestand
Wat is het verschil tussen variabele declaratie, initialisatie en definitie?
// definitie van een variabele
let a = 5;
// declaratie van meerdere variabelen
let b, c, d;
// initialisatie van de variabele b
b = 8;
Wat zijn de naming rules en conventions voor variabelen?
Regels:
- Geen gereserveerde woorden
- Niet beginnen met een cijfer
- Geen speciale karakters behalve underscore of het dollarteken
Conventies:
- camelCase notatie
- Namen moeten betekenisvol zijn
Wat is het verschil tussen primitieve datatypen en reference datatypes?
Een belangrijk verschil tussen beiden is dat objecten referentietypes zijn en primitieven value types zijn. M.a.w. wanneer we een object meegeven aan een functie oproep, en de functie dit object aanpast, dan zal deze aanpassing ook blijvend zijn. Dit is omdat niet het object maar een referentie naar het object in het geheugen wordt meegegeven aan de functie.
Bij primitieven is dit niet het geval. Wanneer een primitieve wordt meegegeven aan een functie dan wordt zijn waarde gekopieerd en gebeuren alle aanpassing op dat kopie. We zeggen ook wel dat primitieven call by value types zijn en object call by reference types zijn.
Met welke operator kunnen we het datatype van een variabele opvragen?
Met de typeof operator:
console.log(typeof e);
Wat is het verschil tussen een statement en een expressie?
Een expressie is een stuk code dat een nieuwe waarde teruggeeft. De meest simpele expressies zijn singletons zoals bijvoorbeeld getallen. Operatoren geven ons de mogelijkheid om simpele expressies met elkaar te combineren.
Een statement is een regel code dat iets doet
Wat zijn truthy en falsey values?
Falsey waarden zijn primitieve waarden die door de operator als false waarden worden beschouwd. Truthy waarden zijn primitieve waarden die als true worden beschouwd:
- falsey values: undefined, null, 0, ‘’, NaN
- Truthy values: alle niet falsey values
Gegeven:
let x = 5;
Boolean(x);
console.log(x);
Wat is lazy evalution of short circuiting?
Is het de naam dat gegeven wordt aan operatoren die niet al hun operanden hoeven te evalueren alvorens ze een resultaat kunnen teruggeven.
Wat doet de nullish coalescing operator (??) ?
Deze operator werkt net als de OR operator (||) met als verschil dat het de lege string(‘’) en 0 niet als falsey values beschouwt.
Wat is coercion? Geef een voobeeld?
coercion is wanneer het ene datatype automatisch wordt omgezet naar een andere datatype. Een voorbeeld hiervan is wanneer we een getal met een string combineren:
const age = 31;
const phrase = “I am “ + age + “ years old”;
Hier zal 31 omgezet worden in een string. Deze automatische conversie wordt geïnitieerd door de + operator. Alse deze operator een getal en een string als operanden heeft dan zal het dat getal omzetten naar een string zodat beide operanden kunnen samengevoegd worden in een string.
Gegeven is de volgende code:
let inputYear = ‘1991’;
Number(inputYear) + 18;
Van welk type is inputYear na uitvoer van de tweede regel code?
inputYear is nog steeds van het type string. De expressie Number(inputYear) + 18 zal echter resulteren in een waarde van het type Number.
Het is dus belangrijk om te weten dat Number het datatype van de originele variabele niet aanpast.
let firstName = ‘Jimmy’;
let n = Number(firstName); // geeft NaN terug
console.log(n); // zal NaN printen
Wat is het verschil tussen een gewone if else statement en de ternary operator?
Het verschil is dat de gewone if else een statement is en de ternary operator een expressie is.
Dit is een belangrijk verschil om te weten omdat we op sommige plaatsen in de code enkel expressies kunnen gebruiken en geen statements. Een voorbeeld in bij de initialisatie van een variabele:
// rechts van = kan enkel een expressie staan
const output = x >= 0 ? “positive nr” : “negative nr”;
Wanneer gebruik je best een while loop in plaats van een for loop,
Wanneer je niet juist weet hoeveel keren er geïtereerd moet worden, bijvoorbeeld:
while(dice !== 6){
// do some
}
Wat is het verschil tussen een while en do-while loop?
Het verschil tussen een while en een do while loop is dat de body van een do while altijd minstens 1 keer zal uitgevoerd worden.
let i = 0;
do {
console.log(i);
i++;
} while (i < 10);
Wat is het verschil tussen de for-in en for-of loop?
De for-in loop wordt gebruikt om door objecten te lopen, terwijl de for-of gebruikt wordt om door iterables (array, set, map, string) te lopen.
Indien de variabele binnen een code block wordt gedefinieerd dan zeggen we dat de variabele een lokale scope heeft. In dit geval is de variabele enkel bruikbaar binnen dat block.
Waarom is het afgeraden om globale variabelen te definiëren?
Het wordt afgeraden om globale variabelen te definiëren omwille van veiligheid en geheugengebruik.:
Wat zijn de verschillen tussen het definiëren van een variabelen met let en var?