3.4 KiB
3.4 KiB
id, title, challengeType, videoUrl
id | title | challengeType | videoUrl |
---|---|---|---|
56533eb9ac21ba0edf2244de | Adding a Default Option in Switch Statements | 1 | https://scrimba.com/c/c3JvVfg |
Description
switch
statement you may not be able to specify all possible values as case
statements. Instead, you can add the default
statement which will be executed if no matching case
statements are found. Think of it like the final else
statement in an if/else
chain.
A default
statement should be the last case.
switch (num) {
case value1:
statement1;
break;
case value2:
statement2;
break;
...
default:
defaultStatement;
break;
}
Instructions
answer
for the following conditions:"a"
- "apple""b"
- "bird""c"
- "cat"default
- "stuff"
Tests
tests:
- text: <code>switchOfStuff("a")</code> should have a value of "apple"
testString: assert(switchOfStuff("a") === "apple", '<code>switchOfStuff("a")</code> should have a value of "apple"');
- text: <code>switchOfStuff("b")</code> should have a value of "bird"
testString: assert(switchOfStuff("b") === "bird", '<code>switchOfStuff("b")</code> should have a value of "bird"');
- text: <code>switchOfStuff("c")</code> should have a value of "cat"
testString: assert(switchOfStuff("c") === "cat", '<code>switchOfStuff("c")</code> should have a value of "cat"');
- text: <code>switchOfStuff("d")</code> should have a value of "stuff"
testString: assert(switchOfStuff("d") === "stuff", '<code>switchOfStuff("d")</code> should have a value of "stuff"');
- text: <code>switchOfStuff(4)</code> should have a value of "stuff"
testString: assert(switchOfStuff(4) === "stuff", '<code>switchOfStuff(4)</code> should have a value of "stuff"');
- text: You should not use any <code>if</code> or <code>else</code> statements
testString: assert(!/else/g.test(code) || !/if/g.test(code), 'You should not use any <code>if</code> or <code>else</code> statements');
- text: You should use a <code>default</code> statement
testString: assert(switchOfStuff("string-to-trigger-default-case") === "stuff", 'You should use a <code>default</code> statement');
- text: You should have at least 3 <code>break</code> statements
testString: assert(code.match(/break/g).length > 2, 'You should have at least 3 <code>break</code> statements');
Challenge Seed
function switchOfStuff(val) {
var answer = "";
// Only change code below this line
// Only change code above this line
return answer;
}
// Change this value to test
switchOfStuff(1);
Solution
function switchOfStuff(val) {
var answer = "";
switch(val) {
case "a":
answer = "apple";
break;
case "b":
answer = "bird";
break;
case "c":
answer = "cat";
break;
default:
answer = "stuff";
}
return answer;
}