0

I am trying to pass in extra argument to a function that has a callback in parameter, to no avail

function loadMapService() {
  
      service = new google.maps.places.PlacesService(map);

      service.nearbySearch(request, callback);
    }
  }
}



function callback(results, status) {
  // do something 
}

I want to be able to pass something else into the function callbackwhen I execute the following function with the callback is parameter

service.nearbySearch(request, callback, somethingElse);


function callback(results, status, newArgument?) {
  //how to pass in the new argument properly and retrieve it?
}
xineta5158
  • 117
  • 1
  • 6
  • Instead of using callbacks, why not `Promise` instead? – Dai Oct 10 '21 at 13:47
  • You cannot make the Google code do something it doesn't already do. You *can* create a function with that "new argument" value available by using a closure. – Pointy Oct 10 '21 at 13:48

1 Answers1

0

Using a closure makes it pretty easy.

const myAdditionalParamter = 1;
service.nearbySearch(request,(results, status) =>
{
     // use myAdditionalParamter here;
});
Thallius
  • 2,482
  • 2
  • 18
  • 36