Javascript 在google maps api中使用经度和纬度变量

Javascript 在google maps api中使用经度和纬度变量,javascript,google-maps,Javascript,Google Maps,我刚刚开始在浏览器中使用GoogleMapsAPI,但是当我把变量放在经度/纬度位置而不是直接放在数字位置时,我似乎无法让它工作 我需要从两个输入元素的值填充贴图 它不适用于变量,但如果您将函数中的变量更改为数字,它将非常有效 是的,我知道我不应该发布我的API密钥,但这是我在非帐户上用于测试的密钥,我最终会删除它 函数初始化(){ var userLng=$('#lng').val(); var userLat=$('#lat').val(); 变量映射选项={ 中心:{lat:userLa

我刚刚开始在浏览器中使用GoogleMapsAPI,但是当我把变量放在经度/纬度位置而不是直接放在数字位置时,我似乎无法让它工作

我需要从两个输入元素的值填充贴图

它不适用于变量,但如果您将函数中的变量更改为数字,它将非常有效

是的,我知道我不应该发布我的API密钥,但这是我在非帐户上用于测试的密钥,我最终会删除它

函数初始化(){
var userLng=$('#lng').val();
var userLat=$('#lat').val();
变量映射选项={
中心:{lat:userLat,lng:userLng},
缩放:8
};
var map=new google.maps.map(document.getElementById('map-canvas'),mapOptions);
}
google.maps.event.addDomListener(窗口“加载”,初始化)
#地图画布{
高度:30公分;
宽度:30em;
}

如果您正在使用字符串,请尝试使用浮点数:

var userLng = parseFloat($('#lng').val());
var userLat = parseFloat($('#lat').val());
var mapOptions = {
        center: { lat: userLat, lng: userLng },
        zoom: 8
    };
如果输入值需要parseFloat(),则需要数字而不是字符串

函数初始化(){
var userLng=parseFloat($('#lng').val();
var userLat=parseFloat($('#lat').val());
变量映射选项={
中心:{lat:userLat,lng:userLng},
缩放:8
};
var map=new google.maps.map(document.getElementById('map-canvas'),mapOptions);
}
google.maps.event.addDomListener(窗口“加载”,初始化)
#地图画布{
高度:30公分;
宽度:30em;
}


纬度和经度不是整数的元组。它们是浮点坐标。是的,我无意中从代码中复制了parseInt,我立即更改了它正确的答案!这就是问题所在。使用
+
-例如
userLng=+$('#lng').val()进行类型转换会稍微快一些