// 首先,确保你已经在Google Cloud Platform上启用了Google Maps JavaScript API,并获得了你的API密钥
// 然后,在HTML文件中引入Google Maps JavaScript API
// <script src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&libraries=&callback=initMap" async defer></script>
function initMap() {
// 初始化地图,这里仅作为示例,实际使用时你可能不需要显示地图
var map = new google.maps.Map(document.getElementById('map'), {
zoom: 5,
center: {lat: -34.397, lng: 150.644}
});
// 定义两个点
var origin = {lat: -34.397, lng: 150.644}; // 示例起点
var destination = {lat: -33.8688, lng: 151.2093}; // 示例终点
// 使用DistanceMatrixService计算距离
var service = new google.maps.DistanceMatrixService();
service.getDistanceMatrix({
origins: [origin],
destinations: [destination],
travelMode: 'DRIVING', // 可以是'DRIVING', 'BICYCLING', 'WALKING', 或 'TRANSIT'
unitSystem: google.maps.UnitSystem.METRIC, // 或 google.maps.UnitSystem.IMPERIAL
avoidHighways: false,
avoidTolls: false,
drivingOptions: {
departureTime: null,
trafficModel: google.maps.TrafficModel.BEST_GUESS
}
}, function(response, status) {
if (status !== 'OK') {
console.error('Error:', status);
return;
}
// 输出第一个结果的距离和持续时间
var originList = response.originAddresses;
var destinationList = response.destinationAddresses;
var outputDiv = document.getElementById('output');
for (var i = 0; i < originList.length; i++) {
var results = response.rows[i].elements;
for (var j = 0; j < results.length; j++) {
var element = results[j];
var distance = element.distance.text;
var duration = element.duration.text;
outputDiv.innerHTML += originList[i] + ' 到 ' + destinationList[j] + '<br>' +
'距离: ' + distance + '<br>' +
'时间: ' + duration + '<br><br>';
}
}
});
}
// 假设你的HTML中有一个id为'output'的div来显示结果
// <div id="output"></div>
请注意,你需要将`YOUR_API_KEY`替换为你从Google Cloud Platform获取的API密钥,并确保你的网页可以访问Google Maps JavaScript API。此代码示例中还包括了地图的初始化部分,但在实际应用中,如果你只需要计算距离而不需要显示地图,可以省略地图初始化的部分。此外,确保你的HTML中有一个`div`元素用于显示计算结果,其`id`应与`document.getElementById('output')`中的`id`相匹配。