2.1 KiB
2.1 KiB
id, title, challengeType, videoUrl, forumTopicId, dashedName
| id | title | challengeType | videoUrl | forumTopicId | dashedName |
|---|---|---|---|---|---|
| 56533eb9ac21ba0edf2244de | 在 switch 語句中添加默認選項 | 1 | https://scrimba.com/c/c3JvVfg | 16653 | adding-a-default-option-in-switch-statements |
--description--
在 switch 語句中,你可能無法用 case 枚舉出所有可能的值。 相反,你可以添加 default 語句,它會在找不到相匹配的 case 語句之後執行。 你可以把它看作是 if/else 鏈中最後的那個 else 語句。
default 語句應該被放到最後。
switch (num) {
case value1:
statement1;
break;
case value2:
statement2;
break;
...
default:
defaultStatement;
break;
}
--instructions--
寫一個 switch 語句,設置以下條件設置 answer:
a - apple
b - bird
c - cat
default - stuff
--hints--
switchOfStuff("a") 應該返回字符串 apple
assert(switchOfStuff('a') === 'apple');
switchOfStuff("b") 應該返回字符串 bird
assert(switchOfStuff('b') === 'bird');
switchOfStuff("c") 應該返回字符串 cat
assert(switchOfStuff('c') === 'cat');
switchOfStuff("d") 應該返回字符串 stuff
assert(switchOfStuff('d') === 'stuff');
switchOfStuff(4) 應該返回字符串 stuff
assert(switchOfStuff(4) === 'stuff');
不能使用 if 或 else 語句。
assert(!/else/g.test(code) || !/if/g.test(code));
你應該使用 default 語句。
assert(switchOfStuff('string-to-trigger-default-case') === 'stuff');
你至少應該寫 3 個 break 語句。
assert(code.match(/break/g).length > 2);
--seed--
--seed-contents--
function switchOfStuff(val) {
var answer = "";
// Only change code below this line
// Only change code above this line
return answer;
}
switchOfStuff(1);
--solutions--
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;
}