It's not the iPhone 4s, it's IOS 5 on the iPhone. I have a 3GS, and it exhibits the same problems. As an experiment, I made sure that both the iPhone 3GS and iPad 2 (both running ios5) were at 100% charge. I then unplugged them both and left them in standby (no activity). After 90 minutes, the iPad was at 97% battery, while the iPhone was at 80%. Different hardware platforms, but a good indication that it's ios5 on the iPhone.
With ios4, I usually pulled the iPhone from the charger at 06:30 on my way to work and put it back in around 16:00 or so, and it showed 70-80% battery remaining (many months experience with this). WIth ios5, I'm down to 20% and a low battery warning at 14:00. Once again, a definite problem with ios5 on the iPhone (3GS or 4 or 4s, apparently).
I've tried jiust about all the suggestions; eliminating most notifications, eliminating location services, resetting network, deleting and re-entering email settings, and even a full reset and restore, all to no avail. Interestingly, running the 'System Status' app shows the CPU utilization at 100% almost all the time on the iPhone, but only 5% or so on the iPad. This is somewhat confirmed by the fact that if I launch just about anything for the first time (app, system settings, etc), it takes 8-10 seonds for it to launch. Very indicative of a hung process somewhere in the OS chewing up all the resources.
On a related note, I stopped by the Apple store yesterday and mentioned this to a sales rep, and he confirmed that Apple is aware of this problem and working on it. Let's just hope they get it fixed before all the constant charging and discharging ruins the battery.