Return Early Pattern for Functions 2019

Tell us what’s happening:
I don’t even know where to begin with this problem. Please walk me through it.

Your code so far

// Setup
function abTest(a, b) {
  // Only change code below this line
  // Only change code above this line

  return Math.round(Math.pow(Math.sqrt(a) + Math.sqrt(b), 2));

// Change values below to test your code

Your browser information:

User Agent is: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36.

Link to the challenge:

Modify the function abTest so that if a or b are less than 0 the function will immediately exit with a value of undefined .

The idea is to exit the function right at the start if something is wrong with the arguments

The general gist of it is that you can avoid doing work you know will be wrong, like dividing by zero, or in this case taking the square root of a negative number

The square root of a negative number is an imaginary number, so it doesn’t make sense for us to do that here, so abort as soon as possible by returning undefined