Well, it doesn’t save the data, per se: it saves the options. When you convert a single-line text field to multi-select, it automagically creates a multi-select option for every unique value in the column; this is an incredibly handy tool for populating multi-select options without having to retype every potential value. At the point, then, you have a multi-select field with a defined option for every unique data value.
As is the case with any multi-select field, you don’t want clearing the field data also to delete the configured options, so you end up with a blank column but with every select option still defined, ready for data input. Ordinarily this isn’t a problem — but if you’re defining a base, you can end up with unexpected results if you are in the process of reconfiguring fields with existing data. (Want to drive yourself completely nuts? Try redefining the configuration of an already-populated datetime field, toggling and re-toggling the ‘Include time field’ and ‘Use GMT’ options. )