Toнкае месца return у JavaScript

Пасля таго, як выканаецца інструкцыя return - функцыя закончыць сваю працу і ніякі код далей не выканаецца. Глядзіце прыклад:

javascriptfunction func(num) {
  return num ** 2;
  
  console.log('!'); // гэты код ніколі не выканаецца
}

let res = func(3);

Гэта не значыць, што ў функцыі павінен быць адзін return. Але выканаецца толькі адзін з іх. У наступным прыкладзе ў залежнасці ад значэння параметра выканаецца альбо першы, альбо другі return:

javascriptfunction func(num) {
  if (num >= 0) {
    return '+++';
  } else {
    return '---';
  }
}

console.log(func( 3)); // выведзе '+++'
console.log(func(-3)); // выведзе '---'
Задание 1

Што выведзецца ў кансоль у выніку выканання наступнага кода:

javascriptfunction func(num) {
  return num;
  
  let res = num ** 2;
  return res;
}

console.log( func(3) );

Тлумачце чаму.

Задание 2

Што выведзецца ў кансоль у выніку выканання наступнага кода:

javascriptfunction func(num) {
  if (num <= 0) {
    return Math.abs(num);
  } else {
    return num ** 2;
  }
}

console.log( func(10) );
console.log( func(-5) );

Тлумачце чаму.

Задание 3

Што выведзецца ў кансоль у выніку выканання наступнага кода:

javascriptfunction func(num) {
  if (num <= 0) {
    return Math.abs(num);
  }
  
  return num ** 2;
}

console.log( func(10) );
console.log( func(-5) );

Тлумачце чаму.