作者:张浩杰_Hh | 来源:互联网 | 2023-05-28 09:49
假设我打电话给本地存储,如下所示:
window.localStorage.setItem("key", bigJsonObject);
然后,用户立即关闭其Web浏览器.结果会是什么?
window.localStorage.getItem("key")
会bigJsonObject
被部分写出来吗?或者整个写入会失败吗?他们有什么方法可以保证不会有部分写入?
1> Lightness Ra..:
请参阅"Web存储"规范的第4.1节:
对于失败,setItem()
和removeItem()
方法必须是原子的.在失败的情况下,该方法什么都不做.也就是说,对数据存储区域的更改必须成功,或者根本不能更改数据存储区域.
然而,(历史上)在这方面存在浏览器错误,例如在Chrome 21之前的一段时间,直到Chrome 29之前的某个时间.