получить объект, который находится внутри массива - PullRequest
0 голосов
/ 09 марта 2020
{"joker":{"baseMapId":"1536abe5e5504e5db380ccfaa9b6fd8d","customBaseMap":"","zoomn":"5","orient":"0","centLon":"-93.69999999999843","centLat":"38.64999999999935","baseMapLabels":"true"}}
{"batman":{"baseMapId":"1536abe5e5504e5db380ccfaa9b6fd8d","customBaseMap":"","zoomn":"5","orient":"0","centLon":"-93.69999999999843","centLat":"38.64999999999935","baseMapLabels":"true"}}
{"merman":{"baseMapId":"1536abe5e5504e5db380ccfaa9b6fd8d","customBaseMap":"","zoomn":"5","orient":"0","centLon":"-93.69999999999843","centLat":"38.64999999999935","baseMapLabels":"true"}}

Мои данные выглядят так, как указано выше; как я мог, например, пройти oop и получить данные для Бэтмена.

Я пробовал data['batman'] и data[0][batman] - мой желаемый результат - получить все как, то есть ниже:

{"batman":{"baseMapId":"1536abe5e5504e5db380ccfaa9b6fd8d","customBaseMap":"","zoomn":"5","orient":"0","centLon":"-93.69999999999843","centLat":"38.64999999999935","baseMapLabels":"true"}}

Ответы [ 2 ]

1 голос
/ 09 марта 2020

const arr = [{
  "joker": {
    "baseMapId": "1536abe5e5504e5db380ccfaa9b6fd8d",
    "customBaseMap": "",
    "zoomn": "5",
    "orient": "0",
    "centLon": "-93.69999999999843",
    "centLat": "38.64999999999935",
    "baseMapLabels": "true"
  }
}, {
  "batman": {
    "baseMapId": "1536abe5e5504e5db380ccfaa9b6fd8d",
    "customBaseMap": "",
    "zoomn": "5",
    "orient": "0",
    "centLon": "-93.69999999999843",
    "centLat": "38.64999999999935",
    "baseMapLabels": "true"
  }
}, {
  "merman": {
    "baseMapId": "1536abe5e5504e5db380ccfaa9b6fd8d",
    "customBaseMap": "",
    "zoomn": "5",
    "orient": "0",
    "centLon": "-93.69999999999843",
    "centLat": "38.64999999999935",
    "baseMapLabels": "true"
  }
}]

const result = arr.find(x => 'batman' in x);
console.log(result)
1 голос
/ 09 марта 2020

Прежде всего, ваша общая структура неверна. Это не массив, вместо этого есть 3 объекта, написанных один за другим, поэтому вы должны поместить их в правильную структуру массива.

let arr = [{
  "joker": {
    "baseMapId": "1536abe5e5504e5db380ccfaa9b6fd8d",
    "customBaseMap": "",
    "zoomn": "5",
    "orient": "0",
    "centLon": "-93.69999999999843",
    "centLat": "38.64999999999935",
    "baseMapLabels": "true"
  }
}, {
  "batman": {
    "baseMapId": "1536abe5e5504e5db380ccfaa9b6fd8d",
    "customBaseMap": "",
    "zoomn": "5",
    "orient": "0",
    "centLon": "-93.69999999999843",
    "centLat": "38.64999999999935",
    "baseMapLabels": "true"
  }
}, {
  "merman": {
    "baseMapId": "1536abe5e5504e5db380ccfaa9b6fd8d",
    "customBaseMap": "",
    "zoomn": "5",
    "orient": "0",
    "centLon": "-93.69999999999843",
    "centLat": "38.64999999999935",
    "baseMapLabels": "true"
  }
}]

Структуру, подобную этой, можно искать по Array.find(), как показано ниже .

arr.find(el => Object.keys(el)[0] === 'batman' )
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...