このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docsコミュニティーについてもっと知り、仲間になるにはこちらから。
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 2015年7月.
安全なコンテキスト用: この機能は一部またはすべての対応しているブラウザーにおいて、安全なコンテキスト (HTTPS) でのみ利用できます。
getCurrentPosition() はGeolocation インターフェイスのメソッドで、端末の現在位置を取得するために使われます。
保護されたコンテキストが必要であることに加え、この機能はgeolocationPermissions-Policy によってブロックされる可能性があり、またユーザーからの明示的な許可も必要となります。このメソッドが呼び出されたとき、ユーザーは必要に応じて確認されます。権限の状態は、権限 API のgeolocation ユーザー権限を使用して問い合わせることができます。
In this article
構文
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("現在の位置:"); console.log(`緯度: ${crd.latitude}`); console.log(`軽度: ${crd.longitude}`); console.log(`誤差 ${crd.accuracy} メートル`);}function error(err) { console.warn(`ERROR(${err.code}): ${err.message}`);}navigator.geolocation.getCurrentPosition(success, error, options);仕様書
| Specification |
|---|
| Geolocation> # getcurrentposition-method> |