I want to use filter on my function, but I have a little problem.
So, I have this response, here I want to filter by "NAVE"
[
{
"codicePat": 93009428,
"dataInizioAttivita": "1992-03-01",
"dataCessazione": "0001-01-01",
"descrizioneTipoCertificato": "NAVE",
},
{
"codicePat": 93009429,
"dataInizioAttivita": "1992-07-01",
"dataCessazione": "0001-01-01",
"descrizioneTipoCertificato": "NAVE",
},
{
"codicePat": 93009430,
"dataInizioAttivita": "1997-04-03",
"dataCessazione": "0001-01-01",
"descrizioneTipoCertificato": "COMANDATA",
},
{
"codicePat": 93009431,
"dataInizioAttivita": "1992-09-01",
"dataCessazione": "1997-06-08",
"descrizioneTipoCertificato": "NAVE",
}
]
I’m using this function:
if(tipo === x.descrizioneTipoCertificato){
const index = dataPan.content.findIndex(obj => {
return obj.descrizioneTipoCertificato === 'NAVE'
});
dataPan.content.splice(index, 1);
}
from this function I get only 2 first elements with NAVE certificato.
This is not correct, I want all data with this certificato, so 3 elements, not 2.
Have you any idea?
2
Answers
simply use
filter
on the arraythis will simply filter and return to a new array only the element that matches the condition
Use vanilla js here: