Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/417.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript JS-检查循环中是否存在元素_Javascript - Fatal编程技术网

Javascript JS-检查循环中是否存在元素

Javascript JS-检查循环中是否存在元素,javascript,Javascript,我尝试在数组中循环,检查元素是否为null并忽略重复项。看起来像 let tempArr = []; ARRAY.forEach(element => { if(element['sf'] !=null){ if(tempArr.find(test => test.descripcion != element['sf'])){ tempArr.push({ id: element['id'], descripcion: element['sf'] });

我尝试在数组中循环,检查元素是否为null并忽略重复项。看起来像

let tempArr = [];
ARRAY.forEach(element => {
  if(element['sf'] !=null){
    if(tempArr.find(test => test.descripcion != element['sf'])){
    tempArr.push({
    id: element['id'], descripcion: element['sf'] });   
  }
但有些东西失败了,返回空数组

有人知道如何忽略foreach循环中的重复元素吗?

为此,您可以使用and:

const arr=[
{id:0,sf:'a'},//确定
{id:1,sf:null},//x.description!==el.sf){
返回res.concat({id:el.id,description:el.sf});
}
返回res;
}, []);
console.log(结果);
您可以为此使用和:

const arr=[
{id:0,sf:'a'},//确定
{id:1,sf:null},//x.description!==el.sf){
返回res.concat({id:el.id,description:el.sf});
}
返回res;
}, []);

console.log(result);
您可以使用中间集跟踪插入的内容,然后使用简单的
数组.filter()

const数组=[
{id:1,sf:null},
{id:2,sf:'foo'},
{id:3,sf:'bar'},
{id:4,sf:'foo'}
];
常量结果=函数(数据){
const seen=新集合()
返回数据。筛选器(项=>{
if(item.sf==null | | seen.has(item.sf)){
返回false;
}
参见。添加(项目。sf)
返回true;
})
}(阵列);

console.log(result);
您可以使用中间集跟踪插入的内容,然后使用简单的
数组.filter()

const数组=[
{id:1,sf:null},
{id:2,sf:'foo'},
{id:3,sf:'bar'},
{id:4,sf:'foo'}
];
常量结果=函数(数据){
const seen=新集合()
返回数据。筛选器(项=>{
if(item.sf==null | | seen.has(item.sf)){
返回false;
}
参见。添加(项目。sf)
返回true;
})
}(阵列);

console.log(result);
你能把样本数据写成文本,把想要的数据写成文本吗?
test.description
中有一个打字错误,这是一件事。尽管可能是这样colloquialism@Ja我想那是西班牙语。我想应该是
if(!tempArr.find(…descripion!=element['sf'])而不是
if(!tempArr.find(…description==element['sf'])
你能把样本数据写成文本,把所需的数据写成文本吗?test.description中有一个打字错误,这是一件事..尽管可能是colloquialism@Ja我想那是西班牙语。我想那不是
if(tempArr.find(…descripion!=element['sf'])
,而是
if(!tempArr.find(…description==元素['sf'])