Yes, Sitecore will still store the data. As a general rule, Sitecore does not throw out good analytics data, regardless of whether or not the visitor has been identified. In fact, what you are looking to do is actually the default behavior, if you are to exclude the visitor identification logic that you included in your post.
Think of visitor identification more as "visitor recognition". If Sitecore doesn't "recognize" a visitor as an existing contact it simply creates a new one. The default behavior of Sitecore is actually to create a new contact for every visitor. Through the use of identification code, like the logic that you specified in your post, this behavior is changed such that repeat visitors can be "recognized" and their experience can be improved by using their historical tracking data.
Once a visitor has been "recognized" or identified, the new contact that Sitecore created for the visitor is merged with the existing one. Once the session ends and the contact is flushed to Collections (MongoDB) the merged contact data is saved over the existing data for the contact.
In contrast, if a user is never "recognized" or identified, once the session ends the visitor's tracking data is flushed to Collections (MongoDB) and stored as a new contact. When a person makes a repeat visit to the site, if they - as a visitor - are never "recognized" or identified as an repeat visitor (i.e. never matched to an existing contact) then a new contact will be created for the visit. If visitor identification logic is never employed, then there will be a separate contact for each visit that a person makes to the site, since Sitecore will not know how to identify a visit as a repeat or new visit.