fitBounds()を呼び出した直後にgetBounds()を呼び出していますが、マップが再配置され、境界に合わせてズームすると、有効な境界が返されると思いました。残念ながら、getBounds()はnilを返します。
これを再現するコードは次のとおりです。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:v="urn:schemas-microsoft-com:vml">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8"/>
<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=true"></script>
<style>
#map {
width: 800px;
height: 400px;
}
</style>
</head>
<body>
<div id='map'></div>
<script>
var myLatlng1 = new google.maps.LatLng(-38.397, 150.644);
var myLatlng2 = new google.maps.LatLng(-34.897, 150.844);
var myLatLngBounds = new google.maps.LatLngBounds(myLatlng1, myLatlng2);
var myOptions = {
mapTypeId: google.maps.MapTypeId.ROADMAP,
center: new google.maps.LatLng(0, 0),
zoom: 0
}
var map = new google.maps.Map(document.getElementById("map"), myOptions);
map.fitBounds(myLatLngBounds);
console.log(map.getMapTypeId());
console.log(map.getZoom());
console.log(map.getBounds());
</script>
</body>
</html>
足りないものはありますか?私はこの状況についてのドキュメントで何も見つけることができませんでした。私が得る最も近いものは、getBoundsに関するメモです。
マップがまだ初期化されていない場合(つまり、mapTypeがまだnullの場合)、またはcenterとzoomが設定されていない場合、結果はnullになります。
getZoomも未定義を返すことに注意してください。fitBounds()はこの値を設定しませんか?
編集 Marceloの提案に従って、デフォルトのズームと中央でコードを更新しました。