Javascript 将节点列表转换为唯一数组不起作用
我试图从HTML元素(placeDescription)中获取一个名称列表,以便从中生成一个下拉列表,并且不需要重复项。 所以我首先得到“bereiche”,它是一个节点列表,然后把它转换成一个数组,再转换成一个集合。 但它不起作用,复制品仍然存在,我想知道为什么? 有没有一种更简单的方法可以将我的节点列表放入一个没有重复项的数组中? 这应该是非常简单的,但我尝试了几件事,现在他们不工作。 javascript已经足够了,html肯定帮不上忙。Javascript 将节点列表转换为唯一数组不起作用,javascript,Javascript,我试图从HTML元素(placeDescription)中获取一个名称列表,以便从中生成一个下拉列表,并且不需要重复项。 所以我首先得到“bereiche”,它是一个节点列表,然后把它转换成一个数组,再转换成一个集合。 但它不起作用,复制品仍然存在,我想知道为什么? 有没有一种更简单的方法可以将我的节点列表放入一个没有重复项的数组中? 这应该是非常简单的,但我尝试了几件事,现在他们不工作。 javascript已经足够了,html肯定帮不上忙。 多谢各位 var bereiche=docume
多谢各位
var bereiche=document.queryselectoral(“.placeDescription889”);
var berArr=Array.from(bereiche);
var setz=新集合(berArr);
让unique=Array.from(setz);
console.log(unique.length+“uniquelaenge”)代码>保留重复项,因为列表中的每个节点都是唯一的。您正在创建一组节点,而不是一组名称。如果只需要名称,请将节点列表映射到innerText(或包含要查找的文本的任何属性),并从中创建一个集合:
const berArr=Array.from(bereiche,(x)=>x.innerText);
const unique=[…新集合(berArr)];
由于列表中的每个节点都是唯一的,所以重复项仍然存在。您正在创建一组节点,而不是一组名称。如果只需要名称,请将节点列表映射到innerText(或包含要查找的文本的任何属性),并从中创建一个集合:
const berArr=Array.from(bereiche,(x)=>x.innerText);
const unique=[…新集合(berArr)];
Um,因此DOM元素不能重复。一个元素不能属于DOM中的多个父元素。DOM是一个树结构。因此,虽然您可能会看到潜在的“重复数据”,但我可以向您保证元素本身不是重复的。因此,DOM元素不能是重复的。一个元素不能属于DOM中的多个父元素。DOM是一个树结构。因此,虽然您可能会看到潜在的“重复数据”,但我可以向您保证,这些元素本身并不是重复的。谢谢您,先生!这就是解决办法。祝你周末愉快。谢谢你,先生!这就是解决办法。有一个愉快的周末。