For example, array and hashmap both have constant access time (on average). However, for an array the constant is much, much smaller. And for an array, the memory usage is much smaller, because a hash map would store the indices as well, and have many unused slots (because hashing gets slow of the percentage of used slots gets too high).
And then there are vector instructions. A modern Intel processor can read 8 float values or 32 byte values from an array in a single instruction. Those 32 byte values would have to go through the (constant time but slow) hashing code 32 times. I'd say that would easily give you a factor 1000 for total slowdown.