iOS also has an emulator that does exactly that. There is zero difference between developing for iOS, Windows or Android, other than the fact that the developer program on iOS gets you a code signing certificate, and on the other platforms you need to take care of that seperately. You can still DEVELOP for iOS with zero payment into the developer program.
Yes, you need a Mac, or at least some way of running OS X to run XCODE, but to develop for Android or Windows you also need a computer with either a Windows license or a copy of Linux.
A 2010 Mac Mini, which is more than capable of iOS development is not cost prohibitive.