JavaScript包装器,提供当前位置

时间:2016-06-09 23:00:08

标签: javascript geolocation

我正致力于面向移动浏览器的Javascript。目标是每隔几秒保存当前的地理位置。

在任何给定时间都没有system.getPosition或其他东西来获取当前位置。要获得该位置,可以使用navigator.geolocation.getPosition(function x),其中函数x是一个函数,只要位置可用,它将以位置对象作为参数调用。另一个选项是使用navigator.geolocation.watchPosition(function x),其中每次位置改变时都会使用position对象作为参数调用函数x。

我想要能在任何特定时间获得当前地理位置的东西。

这有效:

var _position;
function setPosition(position) {
    _position = position;
}
navigator.geolocation.watchPosition(setPosition);

_position始终保持最新位置。

为什么这不起作用?我得到一个“未捕获的TypeError:无法设置未定义的属性'_position'”:

class GPS {
    constructor(){
        var _position;      //fields in javascript are defined by the
    }                       //constructor

    setPosition(position) {
        this._position = position;
    }

    getPosition(){
        return this._position;
    }
}

gps = new GPS();
navigator.geolocation.watchPosition(gps.setPosition);

0 个答案:

没有答案