Also, the iteration order can change drastically after any new key is added, since that key may have forced an internal rehash into a different number of internal bins for efficiency. Two identically-filled hashes might have different iteration orders because of attack-proofing in the hash function. And so on.
In short, while the word "random" is not accurate, one should never depend on the iteration order of a hash.
-- [ e d @ h a l l e y . c c ]
Comment on Re^2: Determining hash order for sorting array