javascript - 为类似对象的数组应用 forEach 函数

标签 javascript reactjs

我想我有一个问题。我尝试为输入类型文件实现 onchangedhandler 方法。

这是一段代码

const { target: { files } } = event
       const filesToStore = []
       files.forEach(file => {
          filesToStore.push(file)
       })
console.log(filesToStore)

But i have a problem. TypeError: files.forEach is not a function

我尝试了 clg 文件,我看到它是一个类似对象的数组,在我的例子中如何转换为数组并将输入的值存储在 filesToStore 文件中?

控制台日志(文件)

FileList {0: File, length: 1}
0: File {name: "176B8706.jpg", lastModified: 1556695382251, lastModifiedDate: Wed May 01 2019 10:23:02 GMT+0300 (Москва, стандартное время), webkitRelativePath: "", size: 7924152, …}
length: 1
__proto__: FileList

最佳答案

你可以拿Array.from ,它采用类似对象的数组并将此对象转换为数组。

filesToStore = Array.from(files);

关于javascript - 为类似对象的数组应用 forEach 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55948342/

相关文章:

javascript - 如何将全栈应用程序部署到heroku或netlify?哪些文件是必需的?

javascript - 为什么模型历史和模型输出历史总是未定义

reactjs - 如何使用 Jest 和 Enzyme 测试 ui-material TextField 的 onChange

javascript - 简单的 React 组件不渲染

javascript - 在响应式站点中垂直分布 div

javascript - 正则表达式的行为因客户端而异

javascript - 使用 JavaScript 定位 HTML 小部件中的动态元素

reactjs - React Native - 全局事件监听器

javascript - ReactJS 样式组件中的响应式 Prop

javascript - React.JS 处理状态中的两个值