英文:
How to remove specific elements from array in typescript
问题
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?
英文:
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?
答案1
得分: 1
Here is the translated JavaScript code:
const data = [
{
"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",
}
]
const filtered = data.filter(item => item.descrizioneTipoCertificato === 'NAVE');
console.log(filtered);
Please note that I have only translated the JavaScript code, as you requested.
英文:
Use vanilla js here:
<!-- begin snippet: js hide: false console: true babel: false -->
<!-- language: lang-js -->
const data = [
{
"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",
}
]
const filtered = data.filter(item => item.descrizioneTipoCertificato === 'NAVE');
console.log(filtered);
<!-- end snippet -->
答案2
得分: 0
使用 filter
函数对数组进行操作:
const newArr = oldArr.filter(item => item.descrizioneTipoCertificato === 'NAVE')
这将简单地过滤并返回一个新数组,其中仅包含满足条件的元素。
英文:
simply use filter
on the array
const newArr = oldArr.filter(item => item.descrizioneTipoCertificato == 'NAVE')
this will simply filter and return to a new array only the element that matches the condition
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论