As far as we can tell, there are three explanations as to why Scarlett Johansson is wearing this retro get-up.
1. She's stopping by the Late Show with David Letterman en route to a 1940's costume party.
2. She didn't have time to change out of her wardrobe from the WWII film she's secretly shooting.
3. She's well aware that her face and body have a distinctly vintage feel, and she's using that to her advantage.
We suspect the Don Jon star is smart enough for the answer to be option #3.