The browser doesn't load from its cache. Cache will get deleted if you do 'Clear All Browsing Data' on your browser.
First time when app loads it is saved to your hard disk in a special area. This is a HTML5 feature. It will only get deleted, if you specifically do so. Next time around, browser loads the app from this area. Hence, it gets loaded even if there is no internet connection. After loading it checks whether an update is there on the server. If there is an update, it updates itself with the latest copy.