Le piège subtil de return en JavaScript
Après l'exécution de l'instruction return
- la fonction termine son exécution et aucun
code supplémentaire ne sera exécuté. Regardez l'exemple :
function func(num) {
return num ** 2;
console.log('!'); // ce code ne s'exécutera jamais
}
let res = func(3);
Cela ne signifie pas qu'une fonction doit avoir
une seule instruction return. Mais un seul
d'entre eux sera exécuté. Dans l'exemple suivant, en fonction
de la valeur du paramètre, soit le premier,
soit le deuxième return sera exécuté :
function func(num) {
if (num >= 0) {
return '+++';
} else {
return '---';
}
}
console.log(func( 3)); // affichera '+++'
console.log(func(-3)); // affichera '---'
Que sera affiché dans la console suite à l'exécution du code suivant :
function func(num) {
return num;
let res = num ** 2;
return res;
}
console.log( func(3) );
Expliquez pourquoi.
Que sera affiché dans la console suite à l'exécution du code suivant :
function func(num) {
if (num <= 0) {
return Math.abs(num);
} else {
return num ** 2;
}
}
console.log( func(10) );
console.log( func(-5) );
Expliquez pourquoi.
Que sera affiché dans la console suite à l'exécution du code suivant :
function func(num) {
if (num <= 0) {
return Math.abs(num);
}
return num ** 2;
}
console.log( func(10) );
console.log( func(-5) );
Expliquez pourquoi.