Очень не хватает Elvis оператора.
var o = {}
if (o.coords.lat) {}
//Uncaught TypeError: Cannot read property 'lat' of undefined
Ну а так, большинство опечаток/ошибок решаются/фиксятся на этапе написания кода, благодаря IDE и линтеру. В TypeScript, с этим ещё проще.