I like S Wawelskis alternative.
I’ve read “use eval with care”.
I also try to not leave spaces in my directory naming scheme.
That is just how I like to work. As always ymmv
The “bash advanced scripting guide” will surely explain
how both versions work.

The first one is probably the most common use case. The main thing to remember for the others is to use the -p switch if you’re creating more than one directory deep, and use double quotes if there’s a space anywhere in the path.