switch
statement or an if/else
chain. This is most useful when you know that your input data is limited to a certain range.
Here is an example of a simple reverse alphabet lookup:
var alpha = {
1:"Z",
2:"Y",
3:"X",
4:"W",
...
24:"C",
25:"B",
26:"A"
};
alpha[2]; // "Y"
alpha[24]; // "C"
var value = 2;
alpha[value]; // "Y"
lookup
. Use it to look up val
and assign the associated string to the result
variable.
phoneticLookup("alpha")
should equal "Adams"
testString: 'assert(phoneticLookup("alpha") === ''Adams'', ''phoneticLookup("alpha")
should equal "Adams"
'');'
- text: phoneticLookup("bravo")
should equal "Boston"
testString: 'assert(phoneticLookup("bravo") === ''Boston'', ''phoneticLookup("bravo")
should equal "Boston"
'');'
- text: phoneticLookup("charlie")
should equal "Chicago"
testString: 'assert(phoneticLookup("charlie") === ''Chicago'', ''phoneticLookup("charlie")
should equal "Chicago"
'');'
- text: phoneticLookup("delta")
should equal "Denver"
testString: 'assert(phoneticLookup("delta") === ''Denver'', ''phoneticLookup("delta")
should equal "Denver"
'');'
- text: phoneticLookup("echo")
should equal "Easy"
testString: 'assert(phoneticLookup("echo") === ''Easy'', ''phoneticLookup("echo")
should equal "Easy"
'');'
- text: phoneticLookup("foxtrot")
should equal "Frank"
testString: 'assert(phoneticLookup("foxtrot") === ''Frank'', ''phoneticLookup("foxtrot")
should equal "Frank"
'');'
- text: phoneticLookup("")
should equal undefined
testString: 'assert(typeof phoneticLookup("") === ''undefined'', ''phoneticLookup("")
should equal undefined
'');'
- text: You should not modify the return
statement
testString: 'assert(code.match(/return\sresult;/), ''You should not modify the return
statement'');'
- text: 'You should not use case
, switch
, or if
statements'
testString: 'assert(!/case|switch|if/g.test(code.replace(/([/]{2}.*)|([/][*][^/*]*[*][/])/g,'''')), ''You should not use case
, switch
, or if
statements''); '
```