Geolocation: getCurrentPosition() メソッド
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
安全なコンテキスト用: この機能は一部またはすべての対応しているブラウザーにおいて、安全なコンテキスト (HTTPS) でのみ利用できます。
Geolocation.getCurrentPosition()
メソッドは、端末の現在位置を取得するために使われます。
構文
getCurrentPosition(success)
getCurrentPosition(success, error)
getCurrentPosition(success, error, options)
引数
success
-
コールバック関数で、
GeolocationPosition
オブジェクトを唯一の入力引数として受け取ります。 error
省略可-
オプションのコールバック関数で、
GeolocationPositionError
オブジェクトを唯一の入力引数として受け取ります。 options
省略可-
オプションのオブジェクトで、以下の引数を含みます。
maximumAge
-
正の
long
値で、キャッシュされた位置を返すことが可能な最大時間をミリ秒単位で表します。0
に設定した場合、端末はキャッシュされた位置を使用できず、実際の現在位置を取得する必要があることを意味します。Infinity
に設定した場合、端末はキャッシュされた位置をその古さに関係なく返さなければなりません。既定値は 0 です。 timeout
-
正の
long
値で、端末が位置を返すために掛けることができる最大時間をミリ秒単位で表します。既定値はInfinity
で、getCurrentPosition()
は位置を取得できるまで返さないという意味です。 enableHighAccuracy
-
論理値で、アプリケーションが可能な限り正確な結果を受け取ることを望んでいることを示します。もし
true
で、端末がより正確な位置を提供できる場合は、そのようにします。この場合、応答時間が遅くなったり、消費電力が増加したりすることに注意してください(たとえば、モバイル端末の GPS チップを使用する場合など)。一方、false
の場合、端末はより速く反応したり、より少ない電力を使用することで、リソースを節約することができます。既定値はfalse
です。
返値
なし (undefined
)。
例
const options = {
enableHighAccuracy: true,
timeout: 5000,
maximumAge: 0,
};
function success(pos) {
const crd = pos.coords;
console.log("Your current position is:");
console.log(`Latitude : ${crd.latitude}`);
console.log(`Longitude: ${crd.longitude}`);
console.log(`More or less ${crd.accuracy} meters.`);
}
function error(err) {
console.warn(`ERROR(${err.code}): ${err.message}`);
}
navigator.geolocation.getCurrentPosition(success, error, options);
仕様書
Specification |
---|
Geolocation # getcurrentposition-method |
ブラウザーの互換性
BCD tables only load in the browser