Geolocation: getCurrentPosition() method
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.
Secure context: This feature is available only insecure contexts (HTTPS), in some or allsupporting browsers.
ThegetCurrentPosition() method of theGeolocation interface is used to get the current position of the device.
Note that in addition to requiring a secure context this feature may be blocked by thegeolocationPermissions-Policy, and also requires that explicit permission be granted by the user.If required, the user will be prompted when this method is called.The permission state can be queried using thegeolocation user permission in thePermissions API.
In this article
Syntax
getCurrentPosition(success)getCurrentPosition(success, error)getCurrentPosition(success, error, options)Parameters
successA callback function that takes a
GeolocationPositionobject as itssole input parameter.errorOptionalAn optional callback function that takes a
GeolocationPositionErrorobject as its sole input parameter.optionsOptionalAn optional object including the following parameters:
maximumAgeOptionalA positive
longvalue indicating the maximum age in milliseconds of a possible cached position that is acceptable to return. If set to0, it means that the device cannot use a cached position and must attempt to retrieve the real current position. If set toInfinitythe device must return a cached position regardless of its age. Default:0.timeoutOptionalA positive
longvalue representing the maximum length of time (in milliseconds) the device is allowed to take in order to return a position. The default value isInfinity, meaning thatgetCurrentPosition()won't return until the position is available.enableHighAccuracyOptionalA boolean value that indicates the application would like to receive the best possible results. If
trueand if the device is able to provide a more accurate position, it will do so. Note that this can result in slower response times or increased power consumption (with a GPS chip on a mobile device for example). On the other hand, iffalse, the device can take the liberty to save resources by responding more quickly and/or using less power. Default:false.
Return value
None (undefined).
Examples
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);Specifications
| Specification |
|---|
| Geolocation> # getcurrentposition-method> |