localStorage/sessionStorage/cookie
html5本地存储主要有两种localStorage和sessionStorage
都是使用相同api,存入后都是字符串类型
localStorage和sessionStorage使用方法:
1.setItem(key,value) 存储数据

2.getItem(key) 获取数据

3.removeItem(key) 删除某一个缓存数据
4.clear() 清空所有缓存数据
5.key(index) 根据下标来获取存储字段
cookie:
test=test:就是存储的值和对应的名字 Max-Age=3600 就是过期时间1个小时

获取就是console.log(document.cookie);
localStorage、sessionStorage、cookie注意点:
1.只能存储字符串,所以对象、数组、函数的储存需要转化字符串
使用JSON.stringify(value);存将对象转化为字符串格式;
使用JSON.parse(value);将字符串格式转化为对象;
2.本地存储只能针对同源策略,其他不是同源的标签页面不能获取当前标签页的缓存
3.性能与存储的大小无关,减少读取item的次数就能提高性能,所以多存少读,就能提高新能
localStorage:
1.没有储存时间限制,关闭浏览器还是会保存数据;
2.容量2~5Mb左右
sessionStorage:
1.关闭浏览器时清空数据;
2.各个浏览器不一,个别浏览器没有上限;
cookie:
1关闭浏览器数据不清空,
2可设置过期时间
3.无论是服务端设置的还是客服端设置的,都会在请求头里带上cookie
4.有大小限制,最好不超过4000字节
indexedDB使用方法:
是html5的数据库:也是一种存储方法
1.创建数据库
注意:版本号只能升,不能降,不然创建不成功

用法:

2.在数据库创建"表"
注意:1.必须在版本号升级中触发,才可以建表

2.创建时,还有一个参数,有两种方式可以配置存放key的值
方法1:


方法2:

3.存数据的方法add(data)(前提:创建时必须配置存key的方式)

模式有两种:readwrite读写和readonly只读;
获取数据:get(key); getAll()//获取所有数据

修改数据:put(data); 既可以修改,也可以新增;也有回调事件同获取
以keyPath:id存储为例:如果表存在id:1004则是修改,不存在则是新增;

删除数据:delete(key);也有回调事件同获取

全部删除:clear();也有回调事件同获取

4.索引:
是key的升级版,有时候不想用系统的key,就可以使用索引,自定义key
创建时:createIndex(表,自定义的key,是否唯一)

获取时:
就可以通过index(表名字).get(自定义key)来获取值

5.游标:store.openCursor() 就是范围遍历
1.IDBKeyRange.only();查询唯一

2.IDBKeyRange.upperBound(),小于等于输出,如果有true,就只是小于

cursor.update({数据})更新某项值,cursor.delete({数据})删除数据
3.IDBKeyRange.lowerBound(),大于等于输出,如果有true,就只是大于
用法同上。。。。
4.IDBKeyRange.bound(n,m,true,true)
//参数1就是大于等于n,
//参数2就是小于等于m,
//参数3控制参数1,为true只大于,
//参数4控制参数2,为true只小于
6.索引+游标的好处:
索引按值搜索+游标范围遍历

localStorage/sessionStorage/cookie的更多相关文章
- localStorage sessionStorage cookie indexedDB
目录: localStorage sessionStorage cookie indexedDB localStorage localStorage存储的数据能在跨浏览器会话保留 数据可以长期保留,关 ...
- 客户端 localStorage, sessionStorage, cookie 的区别
SessionStorage, LocalStorage, Cookie这三者都可以被用来在浏览器端存储数据,而且都是字符串类型的键值对! 区别在于前两者属于WebStorage,创建它们的目的便是存 ...
- localstorage sessionstorage cookie的区别
一.基本概念 Cookie cookie比较小,大小限制在4kb左右,是网景公司的前雇员 LouMontulli 在1993年3月的发明.它的主要用途有保存登录信息,比如你登录某个网站市场可以看到“记 ...
- localstorage sessionstorage cookie 备忘
/* sessionStorage: 保存的数据用于浏览器的一次会话,当会话结束(通常是该窗口关闭),数据被清空: localStorage: 保存的数据长期存在,下一次访问该网站的时候,网页可以直接 ...
- 本地存储 localStorage/sessionStorage/cookie
cookie是个基础的东西.是服务器发送到客户端,存储在客户端的一小段数据.可以存储一些配置信息,客户标识信息等.用户下次访问这个网站时,会把上次网站发来的cookie一同发送回去.cookie保存在 ...
- localStorage,sessionStorage,cookie使用场景和区别
localStorage:HTML5新增的在浏览器端存储数据的方法.设置和获取localStorage的方法: 设置: localStorage.name = 'zjj'; 获取: localStor ...
- localStorage&sessionStorage&Cookie
localStorage.sessionStorage.Cookie三者区别如下:
- localStorage,sessionStorage,cookie区别
localStorage:HTML5新增的在浏览器端存储数据的方法.设置和获取localStorage的方法: 设置: localStorage.name = 'zjj'; 获取: localStor ...
- sessionStorage 和 localStorage 、cookie
sessionStorage 和 localStorage html5中web storage包括两种储存方式:sessionStorage 和 localStorage sessionStorage ...
- sessionStorage 、localStorage 与cookie 的异同点
cookie 容量4kb,默认各种浏览器都支持,缺陷就是每次请求,浏览器都会把本机存的cookies发送到服务器,无形中浪费带宽.userdata,只有ie支持,单个容量64kb,每个域名最多可存10 ...
随机推荐
- 【剑指Offer】【栈】栈的压入、弹出序列
题目:输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否可能为该栈的弹出顺序.假设压入栈的所有数字均不相等.例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈序 ...
- 【面试题】JS 中这些继承方式你知道吗?
携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第 29 天,点击查看活动详情 问题描述 继承 是基于面向对象的,使用 继承 可以让我们更好的复用以前开发的代码,缩短开发的周期.提 ...
- tomcat不生成日志文件
1.不生成 catalina.out 将 /bin/catalina.sh 文件中的: if [ -z "$CATALINA_OUT" ] ; then CATALINA_OUT= ...
- spider_爬取斗图啦所有表情包(图片保存)
"""爬取斗图吧里面的所有表情包知识点总结: 一.使用requests库进行爬取,随机请求头(网站反爬措施少.挂个请求头足矣) 二.具体思路: 1.先爬取所有的图片url ...
- 链接mysql数据库报错:2003-cant connect to Mysql server on ‘localhost’(10038)
今天用navicat连mysql时候突然报错了 我百度了一下,知道了是mysql服务没开,但是我打开了服务,发现服务里面没有mysql,于是就去cmd以管理员身份打开命令提示符,切换到安装mysql的 ...
- Java中类似c语言的printf
System.out.printf("%4d",x); printf("%4d",x); 保留小数点后两位也可以用%.2f 相对来说很好记了 回车用\n
- Object.create() 方浅析
Object.create()方法创建一个新对象,使用现有的对象来提供新创建的对象的__proto__. Object.create(proto[, propertiesObject]) 参数 pro ...
- Jmeter学习:插件
第三方插件官方下载网址:https://jmeter-plugins.org/install/Install/ 第三方插件官方文档网址:https://jmeter-plugins.org/wiki/ ...
- MySql密码忘记怎么办?
第一步服务 net stop mysql 第二步,执行指令 mysqld --console --skip-grant-tables --user=mysql --shared-memory 第三步, ...
- win10 安装mariadb
在MariaDB10.2.17 以前.解压后在目录下看到my-huge.ini.my-innodb-heavy-4G.ini.my-large.ini.my-medium.ini.my-small.i ...