For example: The iPhone 4S was released in October 2011. In October 2013, Apple released iOS 7. While iOS 7 supports the 4S, it increases RAM overhead to the point that switching from app A to app B kills app A the vast majority of the time. (This is terribly annoying when you're writing, you switch to a web browser to look something up, and when you switch back the thing you were writing disappears.)
The user adoption rate of new OSes is ridiculously high. This means you will have maybe 3-6 months after the new OS comes out before apps no longer support the old one.
The 8GB really bogs down and the 16GB has noticeable lag.
I know folks using iOS7 on a 16GB iPhone4 with no issues either (it's slower, but quite usable).
So I could go through the process of switching from Android to iOS for... one phone generation. Doesn't seem quite so worth it then.
EDIT: by updates I mean hardware updates. The 4" form factor is still alive in terms of devices you can buy, but it's dead in terms of development.
If you're about to switch ecosystem and hate anything but 4", I'd get the 5S, it's still a fantastic phone with a top-class processor, top-class camera, awesome screen, good battery, and whatnot. It'll still be updated for 2-3 years software-wise, so it's more than enough for an ecosystem jump; after all, in 3 years, you might want to jump again somewhere else for different reasons.