首页 > 解决方案 > 为什么它说 array.fillter 不是函数

问题描述

我正在制作一个待办事项列表,每个列表都有复选框,如果用户单击复选框,它会调用下面的函数。当我单击复选框时,控制台说 span.filter 不是函数。

代码:

function controlCheck(event) {
  let ischecked = event.target.checked;
  const checkobj = {
    checked: ischecked,
  };
  const span = document.querySelectorAll(".span");
  const veryspan = span.filter((e) => e.id === event.target.id);
}

标签: javascript

解决方案


来自querySelectorAll上的 MDN 文档:

Element 方法 querySelectorAll() 返回一个静态(非实时)NodeList

注意NodeList部分。如果要使用数组方法,可以使用扩展运算符[...span]Array.from(span)


推荐阅读