This is an experimental technology
Check the Browser compatibility table carefully before using this in production.
The state
read-only property of the PermissionStatus
interface returns the state of a requested permission. This property returns one of 'granted'
, 'denied'
, or 'prompt'
.
Syntax
var permission = PermissionStatus.state;
Example
navigator.permissions.query({name:'geolocation'}).then(function(permissionStatus) { console.log('geolocation permission state is ', permissionStatus.state); permissionStatus.onchange = function() { console.log('geolocation permission status has changed to ', this.state); }; });
Specification
Specification | Status | Comment |
---|---|---|
Permissions The definition of 'state' in that specification. |
Working Draft | Initial definition. |
Browser compatibility
The compatibility table in this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
state | Chrome
Full support
44
| Edge Full support 79 | Firefox Full support 46 | IE No support No | Opera Full support Yes | Safari No support No | WebView Android No support No | Chrome Android
Full support
44
| Firefox Android Full support 46 | Opera Android Full support Yes | Safari iOS No support No | Samsung Internet Android Full support 4.0 |
Legend
- Full support
- Full support
- No support
- No support
- Experimental. Expect behavior to change in the future.
- Experimental. Expect behavior to change in the future.
- Uses a non-standard name.
- Uses a non-standard name.