gpt4 book ai didi

javascript 变量

转载 作者:行者123 更新时间:2023-11-29 18:35:29 25 4
gpt4 key购买 nike

我需要访问 javascript 变量:

var geocoder = new google.maps.Geocoder();

function geocodePosition(pos) {    
geocoder.geocode({
latLng: pos
}, function(responses) {
if (responses && responses.length > 0) {
updateMarkerAddress(responses[0].formatted_address);
} else {
updateMarkerAddress('Cannot determine address at this location.');
}
});
}

function updateMarkerStatus(str) {
document.getElementById('markerStatus').innerHTML = str;
}

function updateMarkerPosition(latLng) {
document.getElementById('info').innerHTML = [
latLng.lat(),
latLng.lng()
].join(', ');
}

function updateMarkerAddress(str) {
document.getElementById('address').innerHTML = str;
}



function initialize() {

geocoder.geocode( { 'address': 'london'}, function(results, status) {
rr = results[0].geometry.location;
});

var latLng = new google.maps.LatLng(rr);

var map = new google.maps.Map(document.getElementById('mapCanvas'), {
zoom: 8,
center: latLng,
mapTypeId: google.maps.MapTypeId.ROADMAP
});
var marker = new google.maps.Marker({
position: latLng,
title: 'Point A',
map: map,
draggable: true
});

// Update current position info.
updateMarkerPosition(latLng);
geocodePosition(latLng);

// Add dragging event listeners.
google.maps.event.addListener(marker, 'dragstart', function() {
updateMarkerAddress('Dragging...');
});

google.maps.event.addListener(marker, 'drag', function() {
updateMarkerStatus('Dragging...');
updateMarkerPosition(marker.getPosition());
});

google.maps.event.addListener(marker, 'dragend', function() {
updateMarkerStatus('Drag ended');
geocodePosition(marker.getPosition());
});


// Onload handler to fire off the app.
google.maps.event.addDomListener(window, 'load', initialize);

这是整个脚本,我需要先接近地址,然后以某种方式传递地址以转换为 ltlng

最佳答案

您必须访问它或在回调中的某处传递它,如下所示:

var rr;      
geocoder.geocode( { 'address': 'london'}, function(results, status) {
rr = results[0].geometry.location;
alert(rr);
});

或者将其传递给另一个函数以对数据进行额外的处理:

geocoder.geocode( { 'address': 'london'}, function(results, status) {
anotherFunction(results[0].geometry.location);
});

那个匿名函数是 geocode() 函数的回调,意味着它稍后运行,所以 rr 正在设置 你的 alert() 当前之后。

关于javascript 变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3710841/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com