这可能是因为事件监听器中的回调函数不会传递单个元素作为参数,而是整个数组。您可以使用事件目标(event target)和事件的currentTarget属性来访问单个元素,然后将其传递给Array.filter。
示例代码:
HTML:
JavaScript: const myArray = [1, 2, 3, 4, 5];
document.getElementById('myButton') .addEventListener('click', event => { const clickedElement = event.target; const filteredArray = myArray.filter(element => { return element === clickedElement; });
console.log(filteredArray);
});
在这个示例中,我们在页面上有一个按钮,用于触发事件侦听器。然后,我们在事件回调函数中获取事件目标,并使用过滤器将其传递给数组。注意,在这个示例中,数组中的元素是DOM元素,但这种方法同样适用于常规JavaScript数组。