Having different teams for front-end and backend so they can work and update at different paces.
You can update the front end without taking your servers down.
Front-end developers tend to be cheaper than full stack or wholly backend devs. (And many backend/full stack devs HATE html/css/js). Depending on your app, you might do way more work on the front end than backend, so it'd be a waste to hire full stack devs only to make them do all front end work.
Front-end apps can handle spotty internet connections much better, so they work nicely for websites with a lot of mobile traffic.
User experience tends to be snappier since you aren't always waiting for the server to render your view.