以下に、school[key] = value のような配列の school を示します。
for(key in schools) {
geocoder = new google.maps.Geocoder();
var address = schools[key];
var org_code = key;
geocoder.geocode({ 'address': address}, function(results, status) {
//callback function
})
}
コールバック関数内で key/org_code を使用する必要がありますが、明らかに for ループはジオコード API 呼び出しが完了するよりも速く反復するため、コールバック関数で不適切なキーが使用されます。
array.shift を使用して上記を関数として書き直し、その関数をコールバックで使用しようとしましたが、できませんでした... 1つには、その方法でキーにアクセスできませんでした。