It is literally in the first paragraph of the documentation you linked
Reindex does not attempt to set up the destination index. It does not copy the settings of the source index. You should set up the destination index prior to running a _reindex action, including setting up mappings, shard counts, replicas, etc.
Reindex gives you complete freedom over the destination index, which is why it doesn't set up the destination index for you. For example, we use it when a field mapping changes. In those cases you actually want to manually set up a different destination index mapping before copying over all data.
Other 'cloning' operations such as _shrink and _split do set up the destination index for you. But in those cases it is also clearly documented.
EDIT: For our use case we have also disabled dynamic index creation and dynamic mapping (adding fields automatically). It saved us a lot of confusing situations by throwing an error instead of magically creating unknown fields