4

当 JavaScript 客户端应用程序使用过多内存时,浏览器将崩溃或抛出无法恢复或交换的异常,就像 80 年代一样。

浏览器是否表示它们几乎达到了选项卡的可用内存限制?

理想情况下,我希望能够在浏览器内存不足时捕获可以在 JavaScript 中拦截的事件,以便自动回退到应用程序的轻量版本或告诉我的用户去购买新计算机/ 电话。

我知道 Chrome 性能工具允许对已用内存进行不精确的查询,这是第一步,但可能不足以检测内存限制。

4

1 回答 1

3

不,不幸的是,没有跨浏览器的方法可以检测到这一点。在这个答案中对此进行了一些讨论。

有,window.performance.memory仅在 Chrome中可用。

我也不知道有什么真正好的解决方法。您也许可以检查旧浏览器或没有特定功能的浏览器(“功能检测”),并建议使用旧浏览器的用户使用您的“轻量级”版本,因为这些人最有可能拥有低功率设备。

另一种可能性是查看某些特定操作需要多长时间,如果它们花费的时间太长,则推荐精简版。又是一个非常生硬的解决方案。

于 2015-03-02T08:50:23.623 回答