Jemný detail return v JavaScriptu

Poté, co se provede instrukce return - funkce ukončí své provádění a žádný další kód se již neprovede. Podívejte se na příklad:

javascriptfunction func(num) {
  return num ** 2;
  
  console.log('!'); // tento kód se nikdy neprovede
}

let res = func(3);

To neznamená, že funkce musí mít jeden return. Ale provede se pouze jeden z nich. V dalším příkladu se v závislosti na hodnotě parametru provede buď první, nebo druhý return:

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

console.log(func( 3)); // vypíše '+++'
console.log(func(-3)); // vypíše '---'
Задание 1

Co se vypíše do konzole v důsledku provedení následujícího kódu:

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

console.log( func(3) );

Vysvětlete proč.

Задание 2

Co se vypíše do konzole v důsledku provedení následujícího kódu:

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

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

Vysvětlete proč.

Задание 3

Co se vypíše do konzole v důsledku provedení následujícího kódu:

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

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

Vysvětlete proč.