gpt4 book ai didi

javascript - 对每个数组元素调用函数

转载 作者:行者123 更新时间:2023-12-02 18:05:15 25 4
gpt4 key购买 nike

我试图将数组的每个元素传递给我的函数:

e.target.files.forEach(myfunction);

但我收到此错误:

Uncaught TypeError: Object # has no method 'forEach'

我在控制台上登录并确认数组不为空。

最佳答案

e.target.files 可能不是真正的Array,因此它没有 forEach() 方法。我猜这是一个 FileList对象。

您可能必须自己迭代它或间接对其应用数组方法。

var files = e.target.files;
for (var i = 0; i < files.length; i++) {
myfunction(files[i]);
}

仅供引用,DOM 通常使用伪数组类型的数据结构,这些数据结构具有 .length 属性,并且可以使用 [index] 进行索引,但是不是实际的 Array 对象,因此它们不具有所有其他数组方法。 NodeList是 DOM 使用的另一个类似数组的对象,它不是一个实际的数组。

也可以将此伪数组复制到实际数组中,或使用 .call().apply() 对其应用一些数组方法,但是我认为这里没有必要。我喜欢上面的简单 for 循环,因为它很好并且很清楚发生了什么。

关于javascript - 对每个数组元素调用函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20157696/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com