### Describe the bug

While the toFormData is ready to receive a FileList, the function tries to iterate it over a normal forEach which leads to a

```
TypeError: arr.forEach is not a function
    at FormData.defaultVisitor (toFormData.js:157:1)
    at each (toFormData.js:184:1)
    at Object.forEach (utils.js:256:1)
    at build (toFormData.js:183:1)
    at toFormData (toFormData.js:194:1)
    at Object.transformRequest (index.js:71:1)
    at transform (transformData.js:21:1)
    at Object.forEach (utils.js:247:1)
    at Object.transformData (transformData.js:20:1)
    at Axios.dispatchRequest (dispatchRequest.js:38:1)
```

![image](https://user-images.githubusercontent.com/5560268/215735279-07b514f6-d8dc-4def-9632-14f86481647c.png)


### To Reproduce

Add a file input to the form and try to submit:
```
const FormFileInput = (props: FormFileInputProps) => {
  const { control, name, multiple } = props;
  const { field } = useController({ control, name });
  const [value, setValue] = React.useState('');
  return (
    <input
      type="file"
      value={value}
      onChange={(e) => {
        setValue(e.target.value);
        field.onChange(e.target.files);
      }}
    />
  );
};
```

Error should appear both on a single or multiple file upload.

### Code snippet

_No response_

### Expected behavior

The FileList should be iterated:

`Array.prototype.forEach.call(arr, function(file) { ... });`

### Axios Version

1.2.6

### Adapter Version

_No response_

### Browser

Edge

### Browser Version

109.0.1518.61

### Node.js Version

_No response_

### OS

_No response_

### Additional Library Versions

```bash
React 18.2.0
React-Hook-Form 7.40.0
```


### Additional context/Screenshots

_No response_
lib/helpers/toFormData.js
return utils.isArray(arr) && !arr.some(isVisitable);
}
const predicates = utils.toFlatObject(utils, {}, null, function filter(prop) {
  return /^is[A-Z]/.test(prop);
});
/**
 * Convert a data object to FormData
 *
 * @param {Object} obj
 * @param {?Object} [formData]
 * @param {?Object} [options]
 * @param {Function} [options.visitor]
 * @param {Boolean} [options.metaTokens = true]
 * @param {Boolean} [options.dots = false]
 * @param {?Boolean} [options.indexes = false]
 *
 * @returns {Object}
 **/
/**
 * It converts an object into a FormData object
 *
 * @param {Object<any, any>} obj - The object to convert to form data.
 * @param {string} formData - The FormData object to append to.
 * @param {Object<string, any>} options
 *
 * @returns
 */
function toFormData(obj, formData, options) {