这个概念看起来很简单,但现在实施逻辑似乎令人生畏。
我在我的应用中使用localStorage,我想在更新代码时清除它。
任何想法如何?
答案 0 :(得分:3)
您可以将代码版本存储在脚本中,并在加载脚本时进行比较:
var version = "1.0.4"; // remember to update this
if(localStorage.getItem("version") != version){
localStorage.clear();
localStorage.setItem("version", version);
}
$(function(){
...
如果您不想手动跟踪版本,可以通过散列脚本来生成“版本”。一个好的哈希是在易于实现之间的平衡(这有点排除MD5,除非你愿意获取库),哈希大小(你不想在localStorage中存储脚本的副本)及其检测能力(所以字符串长度可能不够)。
毋庸置疑,删除任何单个更改的所有存储可能过于谨慎,因此我建议使用手动版本跟踪方法,或者(更好)重构应用程序,以便它可以使用以前的版本数据。