Javascript setInterval可以吸收多少电池寿命?

Javascript setInterval可以吸收多少电池寿命?,javascript,ios,Javascript,Ios,我有一个JS应用程序,它使用setInterval每秒更新自己很多次。大多数情况下,它什么都不做,CPU占用也不是很高。我听到有人说JavaScript定时器会耗尽手机的电池寿命,但我没有看到任何事实或证据 有没有什么好方法可以测量iOS上我的JS应用程序的电池电量消耗?或者有人能解释一下,使用setInterval调用非CPU密集型函数将如何更快地耗尽电池电量吗?setInterval每次运行时都会唤醒CPU。你每秒说话多少次?如果大于10,您应该找到不同的解决方案,setInterval是该

我有一个JS应用程序,它使用setInterval每秒更新自己很多次。大多数情况下,它什么都不做,CPU占用也不是很高。我听到有人说JavaScript定时器会耗尽手机的电池寿命,但我没有看到任何事实或证据


有没有什么好方法可以测量iOS上我的JS应用程序的电池电量消耗?或者有人能解释一下,使用setInterval调用非CPU密集型函数将如何更快地耗尽电池电量吗?

setInterval每次运行时都会唤醒CPU。你每秒说话多少次?如果大于10,您应该找到不同的解决方案,setInterval是该作业的错误工具。

setInterval每次运行时都会唤醒CPU。你每秒说话多少次?如果超过10,您应该找到不同的解决方案,setInterval是一个错误的工具。

虽然我对您的问题没有具体的答案,但您可以记住一些指导原则

当页面/选项卡/窗口处于非活动状态时,移动浏览器往往不会运行javascript代码。例如,在iOS中,setInterval等代码仅在显示器打开、Safari打开以及包含代码的页面处于活动状态时运行。我相信Android和WinPhone设备也是如此


当你开发打算开放一段时间的网络应用程序时,你必须抓住机会。这可能类似于餐馆评论网站、游戏或使用地理定位(gps)api的东西。如果您的web应用打算长时间使用,那么持续运行代码将影响电池,可能会显著影响电池。您需要在不同的设备之间设置一个测试协议,并对每个设备进行测试以确保安全,因为没有一种简单的方法可以给出具体的数字。所有的网络应用都是不同的。

虽然我对你的问题没有具体的答案,但你可以记住一些指导原则

当页面/选项卡/窗口处于非活动状态时,移动浏览器往往不会运行javascript代码。例如,在iOS中,setInterval等代码仅在显示器打开、Safari打开以及包含代码的页面处于活动状态时运行。我相信Android和WinPhone设备也是如此


当你开发打算开放一段时间的网络应用程序时,你必须抓住机会。这可能类似于餐馆评论网站、游戏或使用地理定位(gps)api的东西。如果您的web应用打算长时间使用,那么持续运行代码将影响电池,可能会显著影响电池。您需要在不同的设备之间设置一个测试协议,并对每个设备进行测试以确保安全,因为没有一种简单的方法可以给出具体的数字。所有web应用程序都是不同的。

您每秒执行多次的功能的性质是什么?AJAXDOM操纵?什么触发了更新?正如@Ariel所建议的,如果你以那样的频率更新,可能有一个比setInterval更有效的解决方案。你每秒多次更新的函数的性质是什么?AJAXDOM操纵?什么触发了更新?正如@Ariel所建议的,如果您以该频率更新,那么可能有比
setInterval
更有效的解决方案。