如何在Javascript中访问函数中的变量?
单击按钮时,我需要通过将x指定给lat对象来更改贴图函数中的“中心”值。但是,我似乎不知道如何从alertFunction分配map.center.lat=43.138428。本质上,我是在问如何从另一个函数引用一个对象,在一个对象内部,在一个函数内部。我在铁轨内工作如何在Javascript中访问函数中的变量?,javascript,ruby-on-rails,google-maps,Javascript,Ruby On Rails,Google Maps,单击按钮时,我需要通过将x指定给lat对象来更改贴图函数中的“中心”值。但是,我似乎不知道如何从alertFunction分配map.center.lat=43.138428。本质上,我是在问如何从另一个函数引用一个对象,在一个对象内部,在一个函数内部。我在铁轨内工作 <script> //function to update my center function alertFunction() { var x = document.getElementById("myInp
<script>
//function to update my center
function alertFunction() {
var x = document.getElementById("myInput").value;
initMap();
**Wrong Code**
**// map.center.lat = 43.138428;**
};
//function to start map
function initMap() {
map = new google.maps.Map(document.getElementById('map'), {
zoom: 10,
center:{lat: 41.138428, lng:-85.140239},
});
//更新我的中心的函数
函数alertFunction(){
var x=document.getElementById(“myInput”).value;
initMap();
**错误代码**
**//map.center.lat=43.138428**
};
//函数启动映射
函数initMap(){
map=new google.maps.map(document.getElementById('map'){
缩放:10,
中心:{lat:41.138428,lng:-85.140239},
});
您的initMap
函数应该返回一些内容,或者您可以使用参数设置.lat
// the latter
function alertFunction() {
var x = document.getElementById("myInput").value;
initMap(43.138428);
// ^ pass latitude value
};
//function to start map
function initMap(latitude) {
// ^ parameter
var map = new google.maps.Map(document.getElementById('map'), {
zoom: 10,
center:{lat: latitude, lng:-85.140239},
// ^ from parameter
});
}
// the former
function alertFunction() {
var x = document.getElementById("myInput").value;
var map = initMap();
// ^ initMap returns the map
map.center.lat = 43.138428;
};
//function to start map
function initMap(latitude) {
return new google.maps.Map(document.getElementById('map'), {
zoom: 10,
center:{lat: latitude, lng:-85.140239},
});
}
//更新我的中心的函数
函数alertFunction(){
var x=document.getElementById(“myInput”).value;
var-map=initMap();
**错误代码**
**//map.center.lat=43.138428**
};
//函数启动映射
函数initMap(){
return map=new google.maps.map(document.getElementById('map'){
缩放:10,
中心:{lat:41.138428,lng:-85.140239},
});
重新运行map或者您必须使用全局变量。在Google Maps文档中,他们显示了它-您需要在函数外部声明您的“map”变量,否则其他函数无法访问它
<script>
var map;
function initMap() {
map = new google.maps.Map(document.getElementById('map'), {
center: {lat: -34.397, lng: 150.644},
zoom: 8
});
}
</script>
var映射;
函数initMap(){
map=new google.maps.map(document.getElementById('map'){
中心:{纬度:-34.397,液化天然气:150.644},
缩放:8
});
}
这样,你的initMap()就改变了initMap函数之外的一个变量。如果我理解得很好,你只需要在你的
initMap
函数中执行返回map;
,并在调用它时得到结果。哦,伙计,我真是太感谢你指出这一点了。
<script>
var map;
function initMap() {
map = new google.maps.Map(document.getElementById('map'), {
center: {lat: -34.397, lng: 150.644},
zoom: 8
});
}
</script>