You can find pretty much the same behavior in thoughtbot's backbone-support. I highly recommend it and it's written in javascript.
https://github.com/thoughtbot/backbone-support
It has a CompositeView and a SwappingRouter that you should use in place of Backbone.View and Backbone.Router