var casesCount = 1000;
var map = {};
var switchCode = 'function withSwitch(key) { switch (key) {';
for (var i = 0; i < casesCount; ++i) {
map[i] = function () {
return 'case_' + i;
};
switchCode += ' case ' + JSON.stringify(i) + ': return function() { return ' + JSON.stringify('case_' + i) + '; };';
}
switchCode += ' }}';
eval(switchCode);
function withMap(key) {
return map[key];
}
withSwitch(4)();
withSwitch(200)();
withSwitch(550)();
withSwitch(700)();
withSwitch(999)();
withMap(4)();
withMap(200)();
withMap(550)();
withMap(700)();
withMap(999)();