在webapp中使用localStorage

时间:2013-05-06 14:13:56

标签: jquery web-applications local-storage

我有一些问题要在jquery移动webapp中使用localStorage对象: 我有两个应用程序,我想要处理一些设置。例如,应用1保存如下值:

localStorage.setItem("example", "one");

app 2保存相同的属性,但使用其他值:

localStorage.setItem("example", "two");

如果我随后使用getItem读取设置会怎样?是否有任何应用程序拥有自己的存储空间,或者应用程序1是否可以阅读应用程序2的设置?

如果我稍后删除了一个webapp(删除了主屏幕上的书签),那么还会删除localStorage的数据,还是需要手动清除浏览器缓存(例如在设置> safari下)?

localStorage和cookies有什么区别?

localStorage.setItem()和window.localStorage.setItem()有什么区别?

提前致谢!

1 个答案:

答案 0 :(得分:0)

localStorage是每个域名。所以www.foo.com不与www.bar.com共享任何数据。他们每个人都有自己的localStorage。如果您在同一个域上有两个应用程序,但路径不同,那么您应该关注关键冲突。考虑使用store.js,因为它具有命名空间功能,可以轻松避免冲突:

var settings = store.namespace('app1');
settings('example', 'one'); // will automatically store as 'app1.example'

Cookie的不同之处在于它们确实尊重路径,但它们也与每个http请求一起发送(带宽成本较高),通常限制在几千字节,而localStorage通常有多兆字节的空间。