;

How to Get the Index of an Object in Javascript Array


Tutorialsrack 03/04/2022 Jquery Javascript

In this article, you’ll learn how to get the index of an object in a javascript array. There are various ways to find the index of an object in a javascript array such as: the findIndex() method, map() method, and Array.forEach() method.

Here are some examples to get the index of an object in a Javascript array

Example 1: Using the findindex() Method

In this example, We used the ES6 Array.findIndex() method to get the first index of an item in an array of objects. The findIndex() method accepts a callback function as its argument, which iterates through all the elements in the array until the condition is not to pass a test. This method returns -1 if no match is found, otherwise, it returns an element index.

const array = [
    { name: "Tom", city: "Mumbai" },
    { name: "Harry", city: "New York" },
    { name: "Lucy", city: "Toronto" },
    { name: "Monica", city: "London" },
];

console.log(array.findIndex((obj) => obj.city === "Berlin"));
//When no match found it returns -1
// output ==> -1

console.log(array.findIndex((obj) => obj.city === "Toronto"));
//when match is found it returns element index
// output ==> 2

Example 2: Using map() Method

In this example, we used the map() method to get the index of an object in a javascript array. The map() method creates a new array and calls a function for each element in an array. This method returns -1 if no match is found, otherwise, it returns an element index.

const array = [
    { name: "Tom", city: "Mumbai" },
    { name: "Harry", city: "New York" },
    { name: "Lucy", city: "Toronto" },
    { name: "Monica", city: "London" },
];

console.log(array.map((i) => i.city).indexOf("Berlin"));
//When no match found it returns -1
// output ==> -1

console.log(array.map((i) => i.city).indexOf("Toronto"));
//when match is found it returns element index
// output ==> 2

Example 3: Using Array.forEach method

In this example, we used the Array.forEach() method to get the index of an object in the javascript array.

const array = [
    { name: "Tom", city: "Mumbai" },
    { name: "Harry", city: "New York" },
    { name: "Lucy", city: "Toronto" },
    { name: "Monica", city: "London" },
];

function findIndex(array, value) {
  let index = -1;

  array.forEach((obj, i) => {
    if (obj.city === value) {
      index = i;
      return;
    }
  })

  return index;
};

console.log(findIndex(array,'Berlin'));
//When no match found it returns -1
// output ==> -1


console.log(findIndex(array,'London'));
//when match is found it returns element index
// output ==> 3

I hope this article will help you to understand how to get the index of an object in a javascript array.

Share your valuable feedback, please post your comment at the bottom of this article. Thank you!


Related Posts



Comments

Recent Posts
Tags