Как получить значение ключа независимо от того, где оно находится в массиве - PullRequest
0 голосов
/ 23 октября 2019

Возьмите это slice_type: section . Неважно, где он находится в массиве, поэтому здесь его [1], но это может быть [0] или [2]. в конце мне нужно взять ключ элементов, которые находятся в объекте, который имеет slice_type: 'section';

  [ { slice_type: 'structure',
        slice_label: null,
        items: [ [Object] ],
        primary: {} },
      { slice_type: 'section', << Grab this slice_type section. No matter where it's in the array,
 so here its [1], but it could be [0] or [2]. in the end I need to grab the items key that are in the object that has slice_type: 'section';
        slice_label: null,
        items:
         [ [Object],
           [Object],
           [Object],
           [Object],
           [Object],
           [Object],
           [Object] ], <<- get this array of values
        primary: { headline: [Array] } }

Ответы [ 3 ]

1 голос
/ 23 октября 2019

Вы можете использовать функции фильтра и массива карты.

let result = arrays
.filter((obj) => obj["slice_type"] === "section") // filter by condition
.map(obj => obj.items);// return items of objects in filtered list
0 голосов
/ 23 октября 2019

Вы можете использовать фильтр для фильтрации вашего массива и захвата ваших элементов:

var objects = myArray.filter(obj => {
  return obj.slice_type === 'section'
});

var result = objects[0].items;
0 голосов
/ 23 октября 2019

потому что это массив и объект внутри него
, поэтому вы можете зациклить весь объект и проверить наличие slice_type
Например:

let listOfSliceType = []
for (let object of array) {
     if (object['slice_type'] && object['slice_type'] === 'section') {
          listOfSliceType.push(object);
     }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...