javascript - node with express js for each loop -


i'm using express node rest api, need run loop determine output json. route file looks

var redis = require('ioredis') var redis = new redis({     port: 6379,     host: '127.0.0.1',     family: 4,     password: 'password',     db: 0 });  var jsonresult = {}; var process = function(lat,lon,dist,unit) {     jsonresult.result = 'success';     var vehicle_type = new array('small','medium');       vehicle_type.foreach(function(vehicle, index, arr)      {         redis.georadius ( vehicle,lat,lon ,dist,unit,'withcoord','withdist',function( err , result )          {             if (err)              {                 console.log(err);             }              jsonresult[vehicle] = result;         }) ;     })      return jsonresult; }  router.get('/:lat/:lon/:dist/:unit', function(req, res, next) {     var lat = req.params.lat;     var lon = req.params.lon;      var dist = req.params.dist;     var unit = req.params.unit;     res.json(process(lat,lon,dist,unit)); });  module.exports = router; 

and expected json output is

{"result":"success","small":[["driver_1","0.2779",["56.507199704647064","-0.12500104133338397"]],["driver_2","0.2782",["56.50730162858963","-0.12500104133338397"]]],"medium":[]} 

but i'm getting

{"result":"success"} 

whats wrong in code ?

this way:

vehicle_type.foreach(function(vehicle, index, arr) {    jsonresult[vehicle] = true; }) 

and pass result in response when calling res.json()..

res.json(jsonresult);


Comments