导航器:getBattery() 方法

安全上下文:此功能仅在安全上下文 (HTTPS) 中可用,在一些或所有支持的浏览器中可用。

getBattery() 方法提供有关系统电池的信息。它返回一个电池承诺,该承诺解析为一个BatteryManager 对象,该对象提供一些属性来获取电池状态,还有一些事件可以处理以监控电池状态。这实现了电池状态 API;请参阅该文档以获取更多详细信息、使用 API 的指南和示例代码。

从 Chrome 103 开始,电池状态 APINavigator.getBattery() 方法仅对安全上下文公开。

注意:对此功能的访问可能受Permissions-Policy 指令battery 控制。

语法

js
getBattery()

参数

无。

返回值

一个Promise,它使用BatteryManager 对象来满足,您可以使用该对象获取有关电池状态的信息。

异常

NotAllowedError DOMException

权限策略 阻止了此功能的使用。

SecurityError DOMException

用户代理不会将电池信息公开给不安全的上下文,并且此方法是从不安全的上下文中调用的。

示例

此示例获取电池的当前充电状态,并为chargingchange 事件建立一个处理程序,以便在充电状态发生变化时记录充电状态。

js
let batteryIsCharging = false;

navigator.getBattery().then((battery) => {
  batteryIsCharging = battery.charging;

  battery.addEventListener("chargingchange", () => {
    batteryIsCharging = battery.charging;
  });
});

有关更多示例和详细信息,请参阅电池状态 API

规范

规范
电池状态 API
# dom-navigator-getbattery

浏览器兼容性

BCD 表格仅在启用 JavaScript 的浏览器中加载。

另请参见