JavaScript电池状态信息API之Promises-LMLPHP

我会经常的关注各种浏览器里新JavaScript API的发展,其中一种API就是电池状态信息API。之前我曾写过一篇关于电池状态信息API的文章,那时候这个API对于各种浏览器来说还是个新鲜事物。然而,随着技术的发展,这个电池状态信息API有了变化升级,它现在变成了基于promise方式的API,你可以在最新版的谷歌浏览器里使用它。下面让我们来看看这个最新的API的用法!

这个API仍然是navigator对象提供的,但现在它叫做getBattery

navigator.getBattery().then(function(result) {});
登录后复制

通过对getBattery()的调用,我们得到一个promise,这个promise会回调then方法,并提供一个BatteryManager对象,下面是对这个BatteryManager对象的说明:

// result:
BatteryManagery {
	charging: false,
	chargingTime: Infinity,
	dischargingTime: 8940,
	level: 0.59,
	onchargingchange: null,
	onchargingtimechange: null,
	ondischargingtimechange: null,
	onlevelchange: null
}
登录后复制

这个新的API执行的方式有些区别,但返回的结果非常相似。还记得旧的电池状态API的用法吗,它在Mac设备电池有些问题,而新的API适合并没有任何改善。使用浏览器引擎前缀是一个解决方案,但实在是让人恶心。希望各浏览器尽快升级,给程序员更好的编程体验。

推荐教程:《javascript基础教程

以上就是JavaScript电池状态信息API之Promises的详细内容,更多请关注Work网其它相关文章!

09-01 18:23