0

UsingArray.filter似乎返回了我传入的相同数组。

如何返回图像 src 字符串数组?而不是图像元素数组?

var collection = document.images;
var arr = [].slice.call(collection);
var filtered = arr.filter(function(x) { return x.src });

该变量filtered是图像元素数组,而不是图像 src 字符串:/

4

1 回答 1

2

尝试map

map() 方法创建一个新数组,其结果是对该数组中的每个元素调用提供的函数。

var collection = document.images;
var arr = [].slice.call(collection);
var srcArr = arr.map(function(x) { return x.src });

filter() 方法创建一个新数组,其中包含通过所提供函数实现的测试的所有元素。

在您的情况下,过滤器函数始终返回 url,我们需要一个在过滤器函数内返回真值或假值的表达式。

于 2017-04-30T06:46:48.650 回答