Trova l'indice dell'array con un valore in JavaScript

Trova l'indice dell'array con un valore in JavaScript

Trovare l'indice di un valore specifico in un array in JavaScript comporta la ricerca tra gli elementi dell'array per individuare la posizione del valore desiderato. Questo indice funge da punto di riferimento per accedere o manipolare il valore all'interno dell'array.

Esempio 1:

Input: ['apple', 'banana', 'cherry', 'orange'] N = 'cherry' Output: 2 Explanation: The index of the word cherry is 2 

Questi sono i seguenti approcci. Usandoli possiamo trovare l'indice dell'array con un valore:

Tabella dei contenuti

Utilizzando il metodo indexOf()

  • Abbiamo una serie di frutti e vogliamo trovare l'indice dell'elemento 'ciliegia'.
  • Noi usiamo il indice di() metodo per cercare 'cherry' nell'array di frutta e restituisce l'indice di 'cherry', che è 2.

Esempio: Questo esempio è l'implementazione dell'approccio sopra spiegato.

Javascript
const fruits = ['apple', 'banana', 'cherry', 'orange']; const index = fruits.indexOf('cherry'); console.log(index); // Output: 2 

Produzione
2 

Utilizzando il metodo findIndex()

  • IL metodo findIndex() in JavaScript viene utilizzato per ottenere l'indice dell'elemento iniziale in un array che soddisfa una particolare condizione o funzione di test.
  • Il metodo restituisce l'indice del primo elemento che supera il test oppure -1 se nessun elemento supera il test. Il metodo findIndex() non modifica l'array originale.

Esempio : Questo esempio è l'implementazione dell'approccio sopra spiegato.

Javascript
const array = [10, 20, 30, 40]; const index = array.findIndex(num =>numero> 25); console.log(indice); // Risultato: 2 

Produzione
2 

Utilizzo del ciclo for

  • Un altro approccio per trovare l'indice di un array con un valore specifico consiste nell'utilizzare un ciclo for per scorrere l'array e confrontare ciascun elemento con il valore.
  • Il ciclo scorre ciascun elemento dell'array di numeri e controlla se l'elemento corrente è uguale a 30.
  • Quando l'elemento 30 viene trovato nell'indice 2, il ciclo viene terminato utilizzando l'istruzione break e l'indice 2 viene memorizzato nella variabile indice.
  • Infine, la variabile indice viene registrata sulla console, che restituisce 2.

Esempio : Questo esempio è l'implementazione dell'approccio sopra spiegato.

Javascript
const arraynumbers = [10, 20, 30, 40]; let index = -1; for (let i = 0; i  < arraynumbers.length; i++) {  if (arraynumbers[i] === 30) {  index = i;  break;  } } console.log(index); // Output: 2 

Produzione
2 

Utilizzo del metodo Lodash _.findIndex()

  • In questo approccio, utilizziamo lodash, ovvero la libreria di JavaSCript per le funzioni.
  • Ha una funzione integrata _.findIndex() che può essere utilizzato per trovare l'indice del valore specificato.
  • Dobbiamo passare il valore dato di un array e restituirà il numero di indice.

Esempio: Questo esempio è l'implementazione dell'approccio sopra spiegato.

Javascript
// Requiring the lodash library const _ = require('lodash'); // Original array let array1 = [4, 2, 3, 1, 4, 2] // Using lodash.findIndex let index = _.findIndex(array1, (e) =>{ ritorno e == 1; }, 0); // Stampa l'array originale console.log('array originale: ', array1) // Stampa l'indice console.log('index: ', indice) 

Produzione:

original Array: [ 4, 2, 3, 1, 4, 2] index: 3 

Utilizzando il metodo di riduzione

IL metodo di riduzione scorre gli elementi dell'array, confrontandoli ciascuno con il valore di destinazione. Restituisce l'indice quando viene trovato il valore, aggiornando l'accumulatore; in caso contrario, restituisce -1.

Esempio: In questo esempio, il metodo reduce ripete ogni elemento dell'array. Se l'elemento corrente corrisponde al valore che stiamo cercando e l'accumulatore è ancora -1 (il che significa che l'elemento non è stato ancora trovato), restituisce l'indice corrente.

JavaScript
const fruits = ['apple', 'banana', 'cherry', 'orange']; const value = 'cherry'; const index = fruits.reduce((acc, item, currentIndex) =>{ if (elemento === valore && acc === -1) { return Indice corrente;  } ritorno acc; }, -1); console.log(indice); 

Produzione
2