As I said in my reply to Adam Hladik above, from a performance standpoint, I think the compiler is going to optimize a switch statement with static cases, a series of if/else statements with static conditions, or an object literal into similarly performant hash tables. Yes, there's more memory to potentially allocate for an object versus (e.g.) a switch statement, but I suspect that the compiler will only allocate as many pages as the static object needs with instructions to allocate more pages on the fly if needed.
As for readability, I find lookup tables eminently readable, but I'm an old Perl hacker and "hashes" (in the Perl sense) are second nature to me. :D