Come verificare se un array include un oggetto in JavaScript?

Come verificare se un array include un oggetto in JavaScript?
Nella maggior parte dei linguaggi di programmazione di livello superiore, gli array sono dotati di metodi integrati che possono essere utilizzati per accedere e manipolare i dati presenti all'interno degli array. JavaScript ha anche tali metodi che saranno l'argomento di questo articolo. In particolare, i metodi che possono essere utilizzati per verificare se un oggetto con una particolare proprietà/valore è presente all'interno di un array.

JavaScript offre molti metodi la cui funzionalità può essere utilizzata per verificare gli oggetti all'interno degli array. Ne guarderemo la maggior parte in dettaglio:

arr.un po 'di metodo ()

Il metodo qualche () prende una funzione come argomento che controlla se qualsiasi elemento dell'array contiene un valore di proprietà specifico. Se il valore della proprietà viene trovato, il metodo restituisce vero:

Let Employees = [FirstName: "John", LastName: "Doe", Age: 39, FirstName: "Adam", LastName: "Smith", Age: 40];
Let Found = dipendenti.Some (obj =>
if (obj.age == 40)
ReturnTrue;

ReturnFalse;
);
console.registro (trovato);

Altrimenti restituisce falso:

Let Employees = [FirstName: "John", LastName: "Doe", Age: 39, FirstName: "Adam", LastName: "Smith", Age: 40];
Let Found = dipendenti.Some (obj =>
if (obj.age == 55)
ReturnTrue;

ReturnFalse;
);
console.registro (trovato);

arr.Metodo include ()

Il metodo Include prende un oggetto come argomento e restituisce vero se è presente all'interno di un array:

let emp1 = FirstName: "John", LastName: "Doe", Age: 39;
let emp2 = FirstName: "Adam", LastName: "Smith", Age: 40;
let dipendenti = [EMP1, EMP2];
Let Found = dipendenti.Include (EMP1);
console.registro (trovato);

È importante notare che l'oggetto argomento e l'oggetto all'interno dell'array dovrebbero essere gli stessi. Oggetti diversi con gli stessi valori restituiranno false:

Let Employees = [FirstName: "John", LastName: "Doe", Age: 39, FirstName: "Adam", LastName: "Smith", Age: 40];
Let Found = dipendenti.Include (FirstName: "Adam", LastName: "Smith", Age: 40);
console.registro (trovato);

arr.Find () Metodo

Il metodo Find () è simile ad alcuni () in quanto controlla valori di proprietà specifici ma se trovato, restituisce l'oggetto anziché il valore reale:

Let Employees = [FirstName: "John", LastName: "Doe", Age: 39, FirstName: "Adam", LastName: "Smith", Age: 40];
Let Found = dipendenti.find (obj =>
if (obj.age == 40)
ReturnTrue;

ReturnFalse;
);
console.registro (trovato);

Se l'oggetto non è presente, il metodo find () restituisce indefinito:

Let Employees = [FirstName: "John", LastName: "Doe", Age: 39, FirstName: "Adam", LastName: "Smith", Age: 40];
Let Found = dipendenti.find (obj =>
if (obj.age == 28)
ReturnTrue;

ReturnFalse;
);
console.registro (trovato);

arr.Metodo Filtro ()

Il metodo Filter () può essere applicato su un array per ottenere un elenco di tutti gli oggetti che superano determinate condizioni:

Let Employees = [FirstName: "John", LastName: "Doe", Age: 39, FirstName: "Adam", LastName: "Smith", Age: 40];
Let Found = dipendenti.filtro (obj =>
if (obj.age == 40)
ReturnTrue;

ReturnFalse;
);
console.registro (trovato);

arr.Metodo findIndex ()

Il metodo findindex () verificherà il valore della proprietà specifico e restituirà l'indice dell'oggetto trovato:

Let Employees = [FirstName: "John", LastName: "Doe", Age: 39, FirstName: "Adam", LastName: "Smith", Age: 40];
Let Found = dipendenti.findindex (obj =>
if (obj.age == 40)
ReturnTrue;

ReturnFalse;
);
console.registro (trovato);

Se l'oggetto non viene trovato, restituisce -1:

Let Employees = [FirstName: "John", LastName: "Doe", Age: 39, FirstName: "Adam", LastName: "Smith", Age: 40];
Let Found = dipendenti.findindex (obj =>
if (obj.age == 99)
ReturnTrue;

ReturnFalse;
);
console.registro (trovato);

Conclusione

In questo articolo abbiamo superato diversi modi di verificare se un array contiene un oggetto in JavaScript. Tutti questi metodi hanno alcune differenze nel modo in cui funzionano. Queste differenze sono state menzionate e discusse in modo completo nel post sopra.