是否可以每秒25次保存到浏览器localstorage?

时间:2014-03-02 19:12:21

标签: javascript performance ember.js local-storage

我认为标题非常具有描述性。我正在使用Ember.js开展闲置游戏项目,现在我每秒节省25次本地存储,而不是每10或20秒保存一次。这是一个非常少量的数据,我没有遇到任何性能问题(至少在我的机器上),但我想知道这是不是很糟糕,如果是这样,那有多糟糕。谢谢:))

1 个答案:

答案 0 :(得分:3)

有两件事:

1)每个浏览器都支持gettingsetting localstorage values

的不同时间间隔

如果您在一段时间内执行的次数过多,浏览器可能会挂起并无响应!

为获得最佳性能,您应该保存到本地变量,然后定期将其保存到localstorage

以下是浏览器列表及其首次阅读或写入所需的时间:

  • 在Chrome上,第一次读取需要大约1ms,后续读取需要0ms。
  • 在Firefox上,第一次读取需要约0.5ms,后续读取需要约0.1ms。
  • 在Internet Explorer 9上,所有读取都需要0毫秒。我不确定Internet Explorer是如何加载这些数据的,但它似乎与其他浏览器不一样。

  • 在Opera上,首次读取需要大约1ms,后续读取需要0ms。

  • 对于iOS 6上的Safari,第一次读取最多需要24ms,后续读取需要0ms。

2)这还取决于您获得/设置的值的大小。

记住

- localstorage每个域和浏览器的容量有限。

- 并避免在页面加载时使用localstorage

正如我的意见:如果你不想在用户正在玩游戏时将你的游戏压缩,请给予localstorage最长时间。

计算用户玩游戏时使用的最大数据量并设置写localstorage的时间。