Zoom to fit all markers in Mapbox or Leaflet
var markerArray = [];
markerArray.push(L.marker([51.505, -0.09]));
...
var group = L.featureGroup(markerArray).addTo(map);
map.fitBounds(group.getBounds());
var group = new L.featureGroup([marker1, marker2, marker3]);
map.fitBounds(group.getBounds());
See the documentation for more info.
The 'Answer' didn't work for me some reasons. So here is what I ended up doing:
////var group = new L.featureGroup(markerArray);//getting 'getBounds() not a function error.
////map.fitBounds(group.getBounds());
var bounds = L.latLngBounds(markerArray);
map.fitBounds(bounds);//works!