当前位置: 首页 > 知识库问答 >
问题:

筛选超文本标记语言元素填充数组(javascript)[重复]

花博厚
2023-03-14

我有两个数组都包含HTML元素,我想从第一个数组中删除第二个数组中也存在的所有元素。

var a = [document.createElement('div'), document.createElement('span')],
    b = [document.createElement('span'), document.createElement('p')];

filter(a,b) == [document.createElement('span')] // true

我试过这样的东西,但似乎不起作用:

var filter = function(a,b) {
   return a.filter(element => {
      return b.map(element_ => {
         return element.isEqualNode(element_);
      }).includes(false);
   });
}

共有1个答案

谷梁嘉悦
2023-03-14
let res = a.filter((el)=> { return b.find((el2)=> el.localName === el2.localName)});

// res = [span];

因此,el.localName是包含元素名称的字符串类型的超文本标记语言元素的属性。可以用来比较两个超文本标记语言元素

例如:如果是div,则为“div”

代码返回两个数组中的公共元素。

 类似资料:
  • 我在输入上使用typeahead发送建议。。一切都很好,但我知道我想动态创建HTML表并在表中赋值,所以在我的java脚本中,我声明HTML变量来存储表,然后在返回值时使用这个变量。当我将html保存在变量中时,问题就出现了,它开始给出错误,即变量未定义,当我将它放在引号中时,返回时,它只显示变量。。我不知道该怎么做,也不知道应该使用哪种方法,但我被困在了这一点上,我的HTML正在工作 这里是我的

  • 我有一个非常简单的问题,我有一个div在一个html页面,我可以通过他的XPath访问这是:。 我想要一个XPath,可以提供这个div的所有子元素,但我找不到它。我需要用硒的findElements方法获取元素,但我测试的方法不起作用: 我的超文本标记语言代码如下: 我想这样使用XPath: 我的Java Selenium脚本如下: 我应该使用什么XPath来获取的子级? 编辑1:我确实使用了*

  • 我在将一些客户端数据表逻辑迁移到服务器端时遇到了一些困难。 我当前的问题是,对于Datatables,如果要对一大组数据(20000行)进行分页,我首先需要加载控制器中的所有行,然后将它们传递给视图: 然后,在加载所有内容和Datatables将记录分页为500页之前,需要等待大约2分钟: 我更改了Datatables声明,以通过处理服务器端处理,如下所示: 让它按我所希望的方式工作非常顺利,但问

  • 如何通过内容插入超文本标记语言标签:e::bef伪元素的属性,我正在尝试一个 但这行不通。是否有其他方法将超文本标记语言插入到伪元素CSS中? 谢谢,

  • 我正在工作的工具提示和从后端我将获得数据与html标记。我需要在工具提示中显示相应的标签中的相应数据。例如,我将从后端获得Hello用户单击此处。我必须显示为你好用户在h1格式,点击这里应该是一个锚。我尝试了这两个功能,并取代其不工作。 具有以下功能: 替换: https://codesandbox.io/s/serene-fast-u8fie?file=/App.svelte

  • 我想在单击输入字段时触发一个处理程序,在取消选择输入字段时触发另一个处理程序(即,如果有人在字段外单击)。有没有办法做到这一点? 单击处理程序非常简单: 是否可以创建“取消单击”处理程序?