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"); '
```