微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

【阅读】《head first html5》第九章——在本地存储

  • web存储是浏览器中的一个存储库,可是一个API,可是用来从这个本地存储库保存和获取数据
  • 大多数浏览器都为每个源提供了至少5MB的存储空间
  • Web存储包括本地存储(localStorage)和会话存储(sessionStorage)
  • 本地存储是持久的,即使你关闭浏览器窗口或退出浏览器,本地存储仍然保留
  • 会话存储中的数据项会在你关闭浏览器窗口或退出浏览器时删除。会话存储很适合临时数据项,而不是长期存储
  • 本地存储和会话存储使用完全相同的API
  • Web存储按源(可以认为是域)来组织。源就是Web上文档的位置(例如一些网站的域名csdn.net)
  • 每个域都有一个单独的存储空间,所以存储在一个源的数据项对另一个源中的Web页面是不可见的(在本地种同一个目录下的相当于同源)
  • 使用localStorage.setItem(key,value)可以向本地存储增加一个
  • 使用localStorage.getItem(key)可以从本地存储取出一个
  • 可以使用与关联数组相同的语法在本地存储中设置和获取数据项。可以使用localst[key]来完成
  • 可以使用localStorage.key()方法来列出localStorage中的键(这个我没弄明白,哪有这种方法咯,key()是要有一个参数的)
  • localStorage.length是一个给定源localStorage中的数据项数
  • 使用浏览器中的控制台(firebug为例,在脚本->监控->localStorage中会列出当前在localStorage的参数)查看和删除localStorage中的数据项
  • 可以从localStorage直接删除数据项,只需右键点击一个数据项,并选择delete(有的浏览器不支持这个)
  • 可以在代码中使用removeItem(key)方法和clear方法删除localStorage中的数据项。注意,clear会删除你完成这个清空操作时,源所在的localStorage中的所有内容
  • 每个localStorage数据项的键必须是唯一的。如果使用与一个现有数据项相同的键,会覆盖这个数据项的值。
  • 生成一个唯一的键,一种方法是使用当前时间(自1970年以来的毫秒数),并使用Date对象的getTime()方法
  • 要为你的web应用创建一个适合命名机制,使得即使数据项从本地存储删除,或者如果另一个应用在本地存储中创建了数据项,也能正常工作
  • web存储目前只支持存储字符串作为对应键的值
  • 可以使用parseInt或parseFloat将localStorage中作为字符串存储的数字转换回真正的数字
  • 如果需要存储更复杂的数据,可以使用javascript对象,在存储之前会使用JSON.stringify把他们转换为字符串,在获取之后会使用JSON.parse再将其转换回对象
  • 本地存储对于移动设备尤其有用,可以用来降低带宽需求。
  • 会话存储类类似于本地存储,只不过浏览器存储库中保存的内容不会持久存储,如果你关闭标签页、窗口或退出浏览器,他们就不复存在。会话存储对于短期存储很有用,如购物会话

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。