我遇到了如标题中提到的问题。请先查看底部的图像。
在这张图片中,您可以轻松看到它是 130 米,但如果我使用距离矩阵 API,它会显示 0.1 公里,
这里是 180 米,但在距离矩阵 API 中显示 0.2 公里。都是谷歌怎么会有不同..
这是我获取距离的代码:
var service = new google.maps.DistanceMatrixService();
service.getDistanceMatrix(
{
origins: startArray, //LatLng Array
destinations: finishArray, //LatLng Array
travelMode: google.maps.TravelMode.DRIVING,
unitSystem: google.maps.UnitSystem.METRIC,
avoidHighways: false,
avoidTolls: false
}, callback);
function callback(response, status) {
if (status != google.maps.DistanceMatrixStatus.OK) {
alert('Error was: ' + status);
} else {
var origins = response.originAddresses;
var destinations = response.destinationAddresses;
for (var i = 0; i < origins.length; i++) {
var results = response.rows[i].elements;
console.log(results[i].distance.text);
document.getElementById('ctl00_MainContent_hidSpeed').value += results[i].distance.text+"&";
}
}
}
任何帮助将不胜感激
最佳答案
只需使用results[i].distance.value
而不是文本
。
参见https://developers.google.com/maps/documentation/javascript/distancematrix#distance_matrix_responses例如,在文本中,它是四舍五入的,但该值以米为单位准确显示距离。
关于javascript - Google map 距离矩阵 API 舍入 JS API v3,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17294013/