In particular, you're setting yourself up for failure if you're building a product knowing that you're going to throw it away-- you'll make poor choices that will stick with you for longer than you expect. Besides that, rewrites are risky for a business; they are often never completed since requirements and scope are constantly changing.
However there's no way that I'm going to build something so crappy that I want to toss the entire thing out. I've decided to completely reprogram a system after realizing the first approach was the wrong way to do things, but that's different than deciding to toss your first product out the door from the get go. I gotta agree with smilliken, you're going to write bad code if you know it's going to be thrown out the window.
If you build an MVP, build a really solid foundation. Take the time to do it right. Build a minimal set of features but make your foundation rock solid. Then you don't have to waste time rebuilding when you can just add to what you've got. Will you be two weeks later to market? Perhaps, but you can now iterate on what you've got instead of rebuilding, which would most likely take a lot more than two weeks.
Building things with "we're just going to throw this out newayz" in mind is also pretty bad for morale. Everyone's smiles on the outside, but those developing are thinking "how many rewrites is this thing going to go through?"
Building right the first time will ultimately save time, effort, stamina, and make everyone happier with the product (customers and those building it).