This is any business, not just publicly traded or US businesses. Anyone with even 20 degrees of separation from an actual business knows that any product you spend money developing, has a time limit before the amount of sales gained will not support further development or cause increased profit.
This is actually why so many recent single player games get canceled...companies know that a single player game basically has to be a GOTY candidate in order to get large sales. So, if it becomes apparent that it will be less than that, they scrap it. If they just need more time, then they delay it...but only to a certain point, because a game can only earn so many sales. Do you think if Nintendo delayed BOTW an additional year, that it would have sold better? Even a game like Battleborn...in hindsight they did release it at the right time, because it would have been destroyed even further if they had waited. But, if they had released it like 6 months before Overwatch, and it was even more janky with bugs and such...many people here would say "hey 2K should have made them delay it" but it would have sold significantly more, being the first "hero arena" shooter.
Consumers don't give you "credit" for improvements they never saw. Delaying a game in itself doesn't improve sales. Some companies say..."hey if we release this product today at C+ quality, is there any difference in income in releasing it tomorrow at B+ quality?"...these decisions can sometimes happen before we even see one screenshot (Metroid Prime).