Проход по многомерному массиву в Node.js - PullRequest
0 голосов
/ 26 сентября 2018

Эй, я получил этот объект внутри polygons.js:

var polygons = [
  {
    "_id" : "12345",
    "geometry" : {
       "coordinates" : [[
           [9.123553, 48.71568],
           [ 9.119548, 48.71526 ]
       ]]
    }
  },
  {
    "_id" : "67890",
    "geometry" : {
       "coordinates" : [[
           [ 9.090445, 48.715736 ],
           [ 9.089583, 48.715687 ]
       ]]
    }
  }
]

Я хочу просмотреть этот массив, чтобы получить результат , подобный этому:

[
  { 
    "_id" : "12345",
    "coordinates" : [[
      [9.123553, 48.71568],
      [ 9.119548, 48.71526 ]  
    ]]
  },
  { 
    "_id" : "67890",
    "coordinates" : [[
      [ 9.090445, 48.715736 ],
      [ 9.089583, 48.715687 ]  
    ]]
  }
]

У кого-нибудь есть идеи, как это решить?Большое спасибо в связи с этим!

Ответы [ 3 ]

0 голосов
/ 26 сентября 2018

Вы можете просто использовать Array.map():

var polygons = [ { "_id" : "12345", "geometry" : { "coordinates" : [[ [9.123553, 48.71568], [ 9.119548, 48.71526 ] ]] } }, { "_id" : "67890", "geometry" : { "coordinates" : [[ [ 9.090445, 48.715736 ], [ 9.089583, 48.715687 ] ]] } } ];

let result = polygons.map(({_id,geometry})=>Object.assign({},{_id, coordinates :geometry.coordinates}));
console.log(result);
0 голосов
/ 26 сентября 2018

вы можете отобразить массив и внести необходимые изменения

formatted_polygons = polygons.map(function(polygon){
    return {
        coordinates : polygon.geometry.coordinates,
        _id : polygon._id
    }
});
0 голосов
/ 26 сентября 2018

Похоже, вы просто пытаетесь избавиться от "геометрии" и получить "координаты" напрямую?

polygons.map(polygon => ({ _id: polygon._id, coordinates: polygon.geometry.coordinates }))

Должны ли вы достичь того, что вы ищете

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...