Visors don’t work, and the science of masks isn’t exactly solid either.
I think masks in general probably would work, but the cotton rags many of us reuse on the daily? I’m not convinced, I still wear them of course as a possibility they may work is better than nothing.
Firstly, the science about face mask reducing the your ability to infect others is actually quite solid. It doesn't stop droplets entirely but it reduces how far the droplets travel. As for visors, they would be considerably less effective but the point is that if it was one or the other, the vast majority of knobs that currently don't bother would almost certainly opt for a mask as their easy to fold up and shove in a pocket once you leave the shop where as a visor is less flexible. It's a means to get more to wear a mask then anything else.