Podrobnost return v JavaScriptu

Ko se izvede ukaz return, funkcija zaključi svoje delo in nobena koda naprej se ne bo izvedla. Poglejte primer:

javascriptfunction func(num) {
  return num ** 2;
  
  console.log('!'); // ta koda se ne bo nikoli izvedla
}

let res = func(3);

To ne pomeni, da mora biti v funkciji samo en return. Toda izvedel se bo le eden od njih. V naslednjem primeru se bo, odvisno od vrednosti parametra, izvedel bodisi prvi bodisi drugi return:

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

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

Kaj se bo izpisalo v konzolo kot rezultat izvajanja naslednje kode:

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

console.log( func(3) );

Pojasnite zakaj.

Задание 2

Kaj se bo izpisalo v konzolo kot rezultat izvajanja naslednje kode:

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

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

Pojasnite zakaj.

Задание 3

Kaj se bo izpisalo v konzolo kot rezultat izvajanja naslednje kode:

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

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

Pojasnite zakaj.