Javascript 地理定位不正常

Javascript 地理定位不正常,javascript,geolocation,Javascript,Geolocation,以下代码在控制台中返回: 无法调用未定义的方法“setCenter” this.locateUser = function() { if(navigator && navigator.geolocation) { navigator.geolocation.getCurrentPosition(function(position) { var latitude = position.coords.latitude,

以下代码在控制台中返回:

无法调用未定义的方法“setCenter”

this.locateUser = function() {
    if(navigator && navigator.geolocation) {
            navigator.geolocation.getCurrentPosition(function(position) {
                var latitude = position.coords.latitude,
                    longitude = position.coords.longitude;
                var coords = google.maps.LatLng(latitude, longitude);
                self.map.setCenter(coords);
            });
    }
看起来coords好像出了什么问题

试着这样做:

 map.setCenter(new GLatLng(latitude, -longitude), 13);

您的代码块不完整,因此我不得不在这里猜测很多:您正在访问
self.map.setCenter
。错误消息显示“无法调用未定义的方法‘setCenter’”,因此当定义了
self
时,
self.map
没有。您的代码没有包含
self
self.map
的定义,因此该问题可能存在于其他地方

此外,您不应该在代码中声明并使用
self
作为变量,因为
self
从来都是未定义的(如果未在本地声明,则它指的是
window
)。使用
var=this取而代之