Using Objects for Lookups

This commit is contained in:
Abhisek Pattnaik
2015-12-29 04:49:09 +05:30
parent 62f1f57b92
commit 41d78b5880

View File

@ -3888,83 +3888,65 @@
], ],
"releasedOn": "January 1, 2016", "releasedOn": "January 1, 2016",
"tests": [ "tests": [
"assert(numberLookup(0) === 'zero', 'message: <code>numberLookup(0)</code> should equal <code>\"zero\"</code>');", "assert(phoneticLookup(\"alpha\") === 'Adams', 'message: <code>phoneticLookup(\"alpha\")</code> should equal <code>\"Adams\"</code>');",
"assert(numberLookup(1) === 'one', 'message: <code>numberLookup(1)</code> should equal <code>\"one\"</code>');", "assert(phoneticLookup(\"bravo\") === 'Boston', 'message: <code>phoneticLookup(\"bravo\")</code> should equal <code>\"Boston\"</code>');",
"assert(numberLookup(2) === 'two', 'message: <code>numberLookup(2)</code> should equal <code>\"two\"</code>');", "assert(phoneticLookup(\"charlie\") === 'Chicago', 'message: <code>phoneticLookup(\"charlie\")</code> should equal <code>\"Chicago\"</code>');",
"assert(numberLookup(3) === 'three', 'message: <code>numberLookup(3)</code> should equal <code>\"three\"</code>');", "assert(phoneticLookup(\"delta\") === 'Denver', 'message: <code>phoneticLookup(\"delta\")</code> should equal <code>\"Denver\"</code>');",
"assert(numberLookup(4) === 'four', 'message: <code>numberLookup(4)</code> should equal <code>\"four\"</code>');", "assert(phoneticLookup(\"echo\") === 'Easy', 'message: <code>phoneticLookup(\"echo\")</code> should equal <code>\"Easy\"</code>');",
"assert(numberLookup(5) === 'five', 'message: <code>numberLookup(5)</code> should equal <code>\"five\"</code>');", "assert(phoneticLookup(\"foxtrot\") === 'Frank', 'message: <code>phoneticLookup(\"foxtrot\")</code> should equal <code>\"Frank\"</code>');",
"assert(numberLookup(6) === 'six', 'message: <code>numberLookup(6)</code> should equal <code>\"six\"</code>');", "assert(typeof phoneticLookup(\"\") === 'undefined', 'message: <code>phoneticLookup(\"\")</code> should equal <code>undefined</code>');",
"assert(numberLookup(7) === 'seven', 'message: <code>numberLookup(7)</code> should equal <code>\"seven\"</code>');", "assert(!/case|switch|if/g.test(editor.getValue()), 'message: You should not use <code>case</code>, <code>switch</code>, or <code>if</code> statements'); "
"assert(numberLookup(8) === 'eight', 'message: <code>numberLookup(8)</code> should equal <code>\"eight\"</code>');",
"assert(numberLookup(9) === 'nine', 'message: <code>numberLookup(9)</code> should equal <code>\"nine\"</code>');",
"assert(!/case|switch|if/g.test(code), 'message: You should not use <code>case</code>, <code>switch</code>, or <code>if</code> statements');"
], ],
"challengeSeed": [ "challengeSeed": [
"// Setup", "// Setup",
"function numberLookup(val) {", "function phoneticLookup(val) {",
" var result = \"\";", " var result = \"\";",
"", "",
" // Only change code below this line", " // Only change code below this line",
" switch(val) {", " switch(val) {",
" case 0: ", " case \"alpha\": ",
" result = \"zero\";", " result = \"Adams\";",
" break;", " break;",
" case 1: ", " case \"bravo\": ",
" result = \"one\";", " result = \"Boston\";",
" break;", " break;",
" case 2: ", " case \"charlie\": ",
" result = \"two\";", " result = \"Chicago\";",
" break;", " break;",
" case 3: ", " case \"delta\": ",
" result = \"three\";", " result = \"Denver\";",
" break;", " break;",
" case 4: ", " case \"echo\": ",
" result = \"four\";", " result = \"Easy\";",
" break;",
" case 5: ",
" result = \"five\";",
" break;",
" case 6: ",
" result = \"six\";",
" break;",
" case 7: ",
" result = \"seven\";",
" break;",
" case 8: ",
" result = \"eight\";",
" break;",
" case 9: ",
" result = \"nine\";",
" break;", " break;",
" case \"foxtrot\": ",
" result = \"Frank\";",
" }", " }",
"", "",
" // Only change code above this line", " // Only change code above this line",
" return result;", " return result;",
"}", "}",
"",
"" ""
], ],
"solutions": [ "solutions": [
"function numberLookup(val) {", "function phoneticLookup(val) {",
" var result = \"\";", " var result = \"\";",
"", "",
" var lookup = {", " var lookup = {",
" 0:\"zero\",", " alpha: \"Adams\",",
" 1:\"one\",", " bravo: \"Boston\",",
" 2:\"two\",", " charlie: \"Chicago\",",
" 3:\"three\",", " delta: \"Denver\",",
" 4:\"four\",", " echo: \"Easy\",",
" 5:\"five\",", " foxtrot: \"Frank\"",
" 6:\"six\",",
" 7:\"seven\",",
" 8:\"eight\",",
" 9:\"nine\"",
" };", " };",
"",
" result = lookup[val];", " result = lookup[val];",
"", "",
" return result;", " return result;",
"}" "}",
"",
"phoneticLookup(\"charlie\");"
], ],
"type": "waypoint", "type": "waypoint",
"challengeType": "1", "challengeType": "1",