Trova l'indice dell'oggetto con il metodo Map e IndexOf ()
Il metodo della mappa viene utilizzato per applicare una funzione su ciascun elemento dell'array, trasformarlo e quindi restituirlo all'interno di un array. Possiamo usare questo metodo per ottenere proprietà specifiche degli oggetti che possiamo quindi utilizzare per identificare gli oggetti. Quando identifichiamo l'oggetto che vogliamo conoscere l'indice di We Possiamo semplicemente chiamare il metodo IndexOf ():
Let Employees = [FirstName: "John", LastName: "Doe", Age: 38, FirstName: "John", LastName: "Smith", Age: 45];Nel codice sopra, abbiamo prima definito un array che contiene due oggetti. Gli oggetti contengono dati di diversi dipendenti. Abbiamo quindi usato la funzione della mappa per ottenere l'età dei dipendenti in un array separato. Infine, abbiamo usato il metodo IndexOf () per ottenere l'indice dell'oggetto la cui proprietà di età è 45 e stampato sulla console. Avremmo potuto utilizzare la funzione MAP per ottenere il valore di qualsiasi proprietà e ottenere l'indice dell'oggetto in base a tale proprietà.
JavaScript ES6 ha introdotto un nuovo metodo chiamato FindIndex (). Questo metodo è molto più elegante, ma purtroppo non funziona sui vecchi browser.
Trova l'indice dell'oggetto con il metodo findindex ()
Il metodo findindex () prende una funzione contenente un test come argomento e lo applica a ciascun elemento dell'array senza apportare modifiche all'array originale. Restituisce quindi la posizione dell'elemento array o -1 se nessun elemento passa il test. Con l'uso del metodo findindex () non abbiamo alcuna necessità della funzione mappa ():
Let Employees = [FirstName: "John", LastName: "Doe", Age: 38, FirstName: "John", LastName: "Smith", Age: 45];Il metodo findindex () può anche prendere l'indice dell'elemento corrente e l'array dell'elemento corrente come argomenti opzionali.
Abbiamo usato le funzioni della freccia in entrambi gli esempi di cui sopra per rendere il codice più leggibile, ma la sintassi della funzione predefinita può essere utilizzata anche come argomento per queste funzioni:
Let Employees = [FirstName: "John", LastName: "Doe", Age: 38, FirstName: "John", LastName: "Smith", Age: 45];Conclusione
Questo tutorial completo fornisce due diversi metodi per trovare gli indici di oggetti in JavaScript in base ai valori delle loro proprietà. Il metodo findindex () applica la funzione condizionale a ciascun elemento dell'array stesso e quindi restituisce l'indice dell'elemento che passa la condizione. Ma quando stiamo usando il metodo IndexOF (), dobbiamo anche utilizzare il metodo Map () per ottenere i valori delle proprietà.