格式坐标格式javascript [NODEJS]

时间:2016-09-28 11:49:54

标签: javascript json node.js

我有一个问题,我想将json输出编辑为这种格式: [ 50.87758, 5.78092 ], [ 52.87758, 5.48091 ]等。

目前我有这个输出:

 [ { lat: 53.1799, lon: 6.98565 },
  { lat: 52.02554, lon: 5.82181 },
  { lat: 51.87335, lon: 4.34166 },
  { lat: 50.87758, lon: 5.78092 } ]

我已经尝试过str.replace,但无法让它发挥作用。 这是我目前的代码:

>     var http = require('http.min')
> 
> function getRadars (callback) {   var radars = []   var options = {
>     uri: 'http://www.anwb.nl/feeds/gethf'   }   http.json(options).then(function (result) {
>     Object.keys(result.roadEntries).forEach(function (entry) {
>       if (result.roadEntries[entry].events.radars.length > 0) {
>         radars.push(result.roadEntries[entry].events.radars[0].loc)
>       
>       }
>     })
>     callback(null, radars)   }).catch(function (reason) {
>     console.log('Error calling api', reason)
>     callback(reason)   }) }
> 
> getRadars(function (reason, radars) {
>  
>     console.log(radars);    })

任何帮助表示赞赏!!

1 个答案:

答案 0 :(得分:0)

Array#maparrow-function[ES6]

一起使用

var inp = [{
  lat: 53.1799,
  lon: 6.98565
}, {
  lat: 52.02554,
  lon: 5.82181
}, {
  lat: 51.87335,
  lon: 4.34166
}, {
  lat: 50.87758,
  lon: 5.78092
}];
var op = inp.map(el => [el.lat, el.lon]);
console.log(op);

或者你可以推送array代替Object密钥latlon

radars.push([result.roadEntries[entry].events.radars[0].loc.‌​lat,result.roadEntri‌​es[entry].events.rad‌​ars[0].loc.lon])