valori unice din array cu obiecte

Discutii si intrebari legate de scripturi si functii JavaScript, jQuery si Ajax, cod JavaScript in general.
sterica
Mesaje: 285

valori unice din array cu obiecte

Salutare,

Am un array de forma:

Cod: Selectaţi tot

[
{
Data: 2019,
IdJudet: "09,18"
},
{
Data: 2019,
IdJudet: "09,18, 20, 03"
},
{
Data: 2019,
IdJudet: "09"
},
{
Data: 2019,
IdJudet: null
}
]
Incerc sa salvez intr-un array toate Id-urile de judet unice, de forma: ['03', '09', '18', '20'] ?
Am incercat sub forma:

Cod: Selectaţi tot

let idJud = collect(foo).pluck('IdJudet');
dupa care sa il procesez cu forEach() insa in consola pe idJud am un array neobisnuit de forma: n {items: Array(1211)} iar forEach-ul nu functioneaza.

Multumesc!

MarPlo Mesaje: 4343
Salut,
Incearca si adapteaza la tine codul din acest exemplu:

Cod: Selectaţi tot

<script>
var ar_ob =[
{
Data: 2019,
IdJudet: "09,18"
},
{
Data: 2019,
IdJudet: "09,18, 20, 03"
},
{
Data: 2019,
IdJudet: "09"
},
{
Data: 2019,
IdJudet: null
}
];

var arr =[]; //stores unique ids

//parse the ar_ob
for(var i=0; i<ar_ob.length; i++){
  //if IdJudet is a string, split the ids into an array
  if(typeof ar_ob[i].IdJudet ==='string') var id_j = ar_ob[i].IdJudet.split(',');

  //traverses the array with ids
  for(var i2=0; i2<id_j.length; i2++){
    //if the id is not in arr, add it
    if(!arr.includes(id_j[i2])) arr.push(id_j[i2]);
  }
}

console.log(arr); // ['09', '18', '20', '03']
</script>

sterica Mesaje: 285
Multumesc mult pentru ajutorul acordat!

Subiecte similare