Den subtila aspekten av return i JavaScript
Efter att return-instruktionen har utförts
- avslutas funktionen och ingen
kod efteråt kommer att köras. Se exemplet:
function func(num) {
return num ** 2;
console.log('!'); // den här koden kommer aldrig att köras
}
let res = func(3);
Det betyder inte att en funktion måste ha
ett enda return. Men endast ett
av dem kommer att köras. I följande exempel kommer, beroende
på parameterns värde, antingen det första
eller det andra return att köras:
function func(num) {
if (num >= 0) {
return '+++';
} else {
return '---';
}
}
console.log(func( 3)); // skriver ut '+++'
console.log(func(-3)); // skriver ut '---'
Vad kommer att skrivas ut i konsolen som ett resultat av att följande kod körs:
function func(num) {
return num;
let res = num ** 2;
return res;
}
console.log( func(3) );
Förklara varför.
Vad kommer att skrivas ut i konsolen som ett resultat av att följande kod körs:
function func(num) {
if (num <= 0) {
return Math.abs(num);
} else {
return num ** 2;
}
}
console.log( func(10) );
console.log( func(-5) );
Förklara varför.
Vad kommer att skrivas ut i konsolen som ett resultat av att följande kod körs:
function func(num) {
if (num <= 0) {
return Math.abs(num);
}
return num ** 2;
}
console.log( func(10) );
console.log( func(-5) );
Förklara varför.