zoukankan      html  css  js  c++  java
  • 深入理解javascript之数据存储

    限制:1K左右
    Cookies只能是字符串,储存空间有限,每次HTTP接受和发送都会传递Cookies数据,它会占用额外的流量

    document.cookie = encodeURIComponent(...) & encodeURIComponent(...);
    

    IE 用户数据

    限制: 每个文档最多128K

    CSS
    .userData {
       behavior:url(#default#userData)
    }
    
    JS
    var dataStore = document.getElementById("dataStore"); 
    dataStore.setAttribute("name", "Nicholas"); 
    dataStore.setAttribute("book", "Professional JavaScript"); 
    dataStore.save("BookInfo");
    

    WEB存储机制

    限制: 不同浏览器环境可能不同,最小应该也有1M

    sessionStorage 绑定与某个服务器会话
    
    sessionStorage.setItem('key', value);
    sessionStorage.getItem('key');
    sessionStorage.clear()
    sessionStorage.key()
    sessionStorage.removeItem()
    
    关闭浏览器清除
    
    globalStorage['domain'] 
    	针对域名的存储空间,支持子域的数据存储访问
    
    localStorage 
    	对象在修订过的 HTML 5 规范中作为持久保存客户端数据的方案取代了
    globalStorage。与 globalStorage 不同,不能给 localStorage 指定任何访问规则;规则事先就
    设定好了。要访问同一个 localStorage 对象,页面必须来自同一个域名(子域名无效),使用同一种
    协议,在同一个端口上。这相当于 globalStorage[location.host]。
    
    数据保留到通过 JavaScript 删除或者是用户清除浏览器缓存。
    

    IndexedDB

    indexedDB很适合存储大量数据,它的API是异步调用的,indexedDB使用索引存储数据,各种数据库操作放在事务中执行
    indexedDB支持简单的数据类型,它比localstorage强大,API也相对复杂

    IndexedDB将是一个座位API宿主的全局对象,由于API仍然可能有变化,目前浏览器也都使用提供商前缀
    var indexedDB = window.indexedDB || window.msIndexedDB || window.mozIndexedDB || window.webkitIndexedDB;

    具体如何操作如何使用,后续有单独模块讲解

  • 相关阅读:
    ik_max_word ik_smart
    使用elasticsearch遇到的一些问题以及解决方法(不断更新)
    Install elasticsearch-head: – for Elasticsearch 5.x
    Spring实战5-基于Spring构建Web应用
    如何使用 Android Studio 的 git hub 功能
    windows中使用Git工具连接GitHub(配置篇)
    Git链接到自己的Github(2)进阶使用
    Git链接到自己的Github(1)简单的开始
    Android 自定义控件玩转字体变色 打造炫酷ViewPager指示器
    Android Studio 中快速提取方法
  • 原文地址:https://www.cnblogs.com/pengsn/p/12760658.html
Copyright © 2011-2022 走看看