Det fæle ved return i JavaScript
Efter at return-instruktionen er udført
- afsluttes funktionen, og ingen yderligere
kode vil blive eksekveret. Se eksemplet:
function func(num) {
return num ** 2;
console.log('!'); // denne kode vil aldrig blive eksekveret
}
let res = func(3);
Det betyder ikke, at en funktion kun må have
én return. Men kun én af dem vil blive udført.
I det følgende eksempel, afhængigt af værdien af parameteren,
vill enten den første eller den anden return blive udført:
function func(num) {
if (num >= 0) {
return '+++';
} else {
return '---';
}
}
console.log(func( 3)); // vil udskrive '+++'
console.log(func(-3)); // vil udskrive '---'
Hvad vil blive udskrevet i konsollen som resultat af eksekvering af følgende kode:
function func(num) {
return num;
let res = num ** 2;
return res;
}
console.log( func(3) );
Forklar hvorfor.
Hvad vil blive udskrevet i konsollen som resultat af eksekvering af følgende kode:
function func(num) {
if (num <= 0) {
return Math.abs(num);
} else {
return num ** 2;
}
}
console.log( func(10) );
console.log( func(-5) );
Forklar hvorfor.
Hvad vil blive udskrevet i konsollen som resultat af eksekvering af følgende kode:
function func(num) {
if (num <= 0) {
return Math.abs(num);
}
return num ** 2;
}
console.log( func(10) );
console.log( func(-5) );
Forklar hvorfor.