Как использовать метод Javascript map для доступа к вложенным объектам? - PullRequest
0 голосов
/ 14 июля 2020

Когда я запускаю приведенный ниже код и пытаюсь получить доступ к «id» в изображениях с помощью метода map (), он дает мне значение undefined. Принимая во внимание, что доступ к reId / name / dob / number совпадает с console.log (d.reId)

var data = [
    {
      reId: 'huih23432',
      name: 'skdskdss',
      dob: '26/06/1998',
      number: '34535353543',
      images: {
        "id": 'https://picsum.photos/200',
        "link": 'https://picsum.photos/200',
      },
    },
    {
    "name": "x"
    }


]

data.map((d)=>{
    console.log(d.images.id)
})

Мне нужно решение, использующее сам метод map () для доступа к id | ссылка в ключе "images".

Ответы [ 2 ]

2 голосов
/ 14 июля 2020

var data = [
    {
      reId: 'huih23432',
      name: 'skdskdss',
      dob: '26/06/1998',
      number: '34535353543',
      images: {
        "id": 'https://picsum.photos/201',
        "link": 'https://picsum.photos/200',
      },
    },
    {
    "name": "x"
    }


]

data.map((d)=>{

    if (typeof d.images != 'undefined') 
    console.log(d.images.id);
})
2 голосов
/ 14 июля 2020

Вы должны вернуть в обратном вызове карты

var imageIds = data.map(d=>d.images && d.images.id)
       .filter(id => id); // filter out null elements
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...