I have already passed this test using if statements but when i try using the switch statement, all but 2 conditions are met. Is there a way it can be done?
**Your code so far**
// Setup
function abTest(a, b) {
// Only change code below this line
if (a<0){
return undefined;
}
else if (b<0){
return undefined;
}
// Only change code above this line
return Math.round(Math.pow(Math.sqrt(a) + Math.sqrt(b), 2));
}
abTest(2,2);
**Your browser information:**
User Agent is: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:101.0) Gecko/20100101 Firefox/101.0
I guess you could opt to use a switch statement like this:
// Setup
function abTest(a, b) {
// Only change code below this line
switch (true) {
case (a < 0 || b < 0):
return undefined
}
// Only change code above this line
return Math.round(Math.pow(Math.sqrt(a) + Math.sqrt(b), 2));
}
abTest(2, 2);
But I would personally just use one if statement instead of two
// Setup
function abTest(a, b) {
// Only change code below this line
if (a < 0 || b < 0) {
return undefined
}
// Only change code above this line
return Math.round(Math.pow(Math.sqrt(a) + Math.sqrt(b), 2));
}
abTest(2, 2);
Switch statements work well if you want to clean up a lengthy if/else statement.
But in this case, I think the better option is to go with just one if statement.