# Тонкое место return в JavaScript

После того, как выполнится инструкция `return` - функция закончит свою работу и никакой код дальше не выполнится. Смотрите пример:

`function func(num) { return num ** 2; console.log('!'); // этот код никогда не выполнится } let res = func(3);`

Это не значит, что в функции должен быть один `return`. Но выполнится только один из них. В следующем примере в зависимости от значения параметра выполнится либо первый, либо второй `return`:

`function func(num) { if (num >= 0) { return '+++'; } else { return '---'; } } console.log(func( 3)); // выведет '+++' console.log(func(-3)); // выведет '---'`

Что выведется в консоль в результате выполнения следующего кода:

`function func(num) { return num; let res = num ** 2; return res; } console.log( func(3) );`

Объясните почему.

Что выведется в консоль результате выполнения следующего кода:

`function func(num) { if (num <= 0) { return Math.abs(num); } else { return num ** 2; } } console.log( func(10) ); console.log( func(-5) );`

Объясните почему.

Что выведется в консоль результате выполнения следующего кода:

`function func(num) { if (num <= 0) { return Math.abs(num); } return num ** 2; } console.log( func(10) ); console.log( func(-5) );`

Объясните почему.

←→
↑
en ru