¿Hay alguna manera de detectar excepciones en las devoluciones de llamada de JavaScript? ¿Es posible?¿Es posible detectar excepciones lanzadas en una devolución de llamada asíncrona JavaScript?
Uncaught Error: Invalid value for property <address>
Aquí es el jsFiddle: http://jsfiddle.net/kjy112/yQhhy/
try {
// this will cause an exception in google.maps.Geocoder().geocode()
// since it expects a string.
var zipcode = 30045;
var map = new google.maps.Map(document.getElementById('map_canvas'), {
zoom: 5,
center: new google.maps.LatLng(35.137879, -82.836914),
mapTypeId: google.maps.MapTypeId.ROADMAP
});
// exception in callback:
var geo = new google.maps.Geocoder().geocode({ 'address': zipcode },
function(geoResult, geoStatus) {
if (geoStatus != google.maps.GeocoderStatus.OK) console.log(geoStatus);
}
);
} catch (e) {
if(e instanceof TypeError)
alert('TypeError');
else
alert(e);
}
@anewb, dan Daniels responder a una √ – sbartell
La pregunta es: "¿Es posible?" y esta es una buena respuesta, @BlakeRegalia. – mqsoh
Lógico y justo lo que temía cuando comencé a mirar este problema. Estoy atascado con un caso en el que el código que no control arroja una excepción que necesito detectar, pero no puedo porque es asincrónico ... –