It incentivize companies to add it to their contract just because it makes it harder for employees to quit bad working conditions and low pays since they might not land a new job and be able to pay rent. It doesn't protect any sort of intellectual property, it's simply there to screw over the little guy.
The word "compromise" usually implies that both sides are getting something. What part of this would be a compromise?
Back when it was allowed, some companies would pay in fake company money called "scrip" that you could only use in their company store to buy food. They also owned the houses so you could only rent if you were an employee. Wanna quit your job? Good luck also losing your house and not having actual money to go anywhere else.
You gotta understand that if you have something that can be abused for profits, then it will be abused for profit. Even if a company is has a heart of gold and decides not to do this, they will be out-competed by companies who are willing to do evil things and thus be more profitable. Abuse will happen by logical necessity.