PermissionStatus: state 屬性

Baseline 已廣泛支援

此功能已成熟,並可在多種裝置和瀏覽器版本上執行。自 2022 年 9 月起,所有瀏覽器都已支援此功能。

注意:此功能在 Web Workers 中可用。

statePermissionStatus 介面的一個只讀屬性,它返回所請求許可權的狀態。此屬性返回 'granted''denied''prompt' 之一。

以下之一:

'granted'

使用者或使用者代理代表使用者明確授予了使用 強大功能 的許可權。呼叫者可以使用該功能,可能無需使用者代理再次請求使用者許可。

'denied'

使用者或使用者代理代表使用者拒絕了對該 強大功能 的訪問。呼叫者無法使用該功能。

'prompt'

使用者尚未明確授予使用該功能的許可權(即與 denied 相同)。這也意味著如果呼叫者嘗試使用該功能,使用者代理將提示使用者請求許可權,否則將拒絕訪問該功能。

示例

js
navigator.permissions
  .query({ name: "geolocation" })
  .then((permissionStatus) => {
    console.log(`geolocation permission state is ${permissionStatus.state}`);
    permissionStatus.onchange = () => {
      console.log(
        `geolocation permission status has changed to ${permissionStatus.state}`,
      );
    };
  });

規範

規範
Permissions
# dom-permissionstatus-state

瀏覽器相容性