Home > front end >  Angular search a key in an object and change the value of another key
Angular search a key in an object and change the value of another key

Time:07-04

I have this data below. I need to be able to search in the objet for the id or name key and then change the 'show' key to a different value. How example:

Search the data for id value 2 and change the show value to false.

data = [
   {
      id: 1,
      name: 'one',
      show: false;
      title: 'title1',
      data: [
         {
            id: 1,
            description: 'some description'
         },
         {
            id: 2,
            description: 'some other description'
         }
      ]
   },
   {
      id: 2,
      name: 'two',
      show: true;
      title: 'title2',
      data: [
         {
            id: 1,
            description: 'some description'
         },
         {
            id: 2,
            description: 'some other description'
         }
       ]
    }
 ]

How can I do this?

CodePudding user response:

You can use the findIndex method, and then access your array using the found Index and change any property you want, here's some code that match your use case

let index = data.findIndex((x) => x.id == THE_ID_YOU_ARE_LOOKING_FOR);
if(index > -1) {
  data[index].show = THE_VALUE_YOU_WANT;
}
  • Related