localStorage学习总结
一、本地存储
在HTML5诞生之前,网站如果想在浏览器端存储数据,只能使用Cookie,使用Cookie有较多的限制。
Cookie问题:
1.cookie大小限制在4K左右(各个浏览器不一致)
2.cookie每次随着HTTP请求都会一起发送(造成很多不需要的cookie也会一起发送)
本地存储:
1.localStorage大小限制在5M(各个浏览器不一致)
2.localStorage不会随着HTTP请求一起发送
二、会话级别的本地存储-sessionStorage
sessionStorage:用户浏览某个网站时,从进入网站开始一直到关闭网站,这就是session对象的有效期。
sessionStorage提供了四种方法对本地存储做相关操作。
1. setItem( key, value );添加本地存储数据
2.getItem( key );通过key获取相应的value值
3.removeItem( key ); 通过key删除相应的value值
4.clear();清空本地所有(限本域名下)session数据
- <script type="text/javascript">
- //添加key-value 数据到 sessionStorage
- sessionStorage.setItem("name", "怜白");
- sessionStorage.setItem("job", "前端");
- //通过key来获取value
- var name = sessionStorage.getItem("name");
- console.log(name); // 怜白
- console.log(sessionStorage.length); //
- // 通过key删除value
- sessionStorage.removeItem("job");
- console.log(sessionStorage.length); //
- //清空所有的key-value数据。
- sessionStorage.clear();
- console.log(sessionStorage.length); //
- </script>
三、永久本地存储-localStorage
localStorage:用于持久化的本地存储,除非主动删除数据,否则数据是永远不会过期的。
localStorage提供了四种方法对本地存储做相关操作。
1. setItem( key, value );添加本地存储数据
2.getItem( key );通过key获取相应的value值
3.removeItem( key ); 通过key删除相应的value值
4.clear();清空本地所有数据
- <script type="text/javascript">
- //添加key-value 数据到 sessionStorage
- localStorage.setItem("name", "怜白");
- localStorage.setItem("job", "前端");
- //通过key来获取value
- var name = localStorage.getItem("name");
- console.log(name); // 怜白
- console.log(localStorage.length); //
- // 通过key删除value
- localStorage.removeItem("job");
- console.log(localStorage.length); //
- //清空所有的key-value数据。
- localStorage.clear();
- console.log(localStorage.length); //
- </script>
四、总结
localStorage与sessionStorage 两种区别就是一个临时保存,一个长期保存。
你可能见过下面这种写法:
- <script type="text/javascript">
- // 设置name
- localStorage.name = "怜白"
- // 删除name
- delete localStorage.name
- </script>
上面直接赋值的方法确实可以实现功能,但是官方文档中将其定义为一种不安全的写法,所以不要用这种写法,使用localStorage提供的方法。
localStorage学习总结的更多相关文章
- Rootkit XSS
0x00 XSS Rootkit介绍 Rootkit概念: 一种特殊的恶意软件 类型: 常见为木马.后门等 特点: 隐蔽 持久控制 谈到XSS,一般都是想到 ...
- (转)HTML5开发学习(2):本地存储之localStorage 、sessionStorage、globalStorage
原文:http://www.cnblogs.com/xumingxiang/archive/2012/03/25/2416386.html HTML5开发学习(2):本地存储之localStorage ...
- JavaScript 学习笔记 - LocalStorage
前言 本文主要介绍本地存储的基本使用,以及它和 Cookie.SessionStorage 的区别. 简单回顾 Cookie 在 HTML5 之前,本地存储数据一般是通过 Cookie 来完成的.我们 ...
- [学习笔记]JS计数器,闭包和localStorage
1.前言 Javascript也算用了挺久了,为了得到一个变量,类似Java的静态变量的功能,我想到了很早以前学习JS的闭包,还有做俄罗斯方块的排行榜用到LocalStorage技术,所以想总结一下, ...
- HTML5 学习笔记(三)——本地存储(LocalStorage、SessionStorage、Web SQL Database)
一.HTML4客户端存储 B/S架构的应用大量的信息存储在服务器端,客户端通过请求响应的方式从服务器获得数据,这样集中存储也会给服务器带来相应的压力,有些数据可以直接存储在客户端,传统的Web技术中会 ...
- HTML5学习笔记之客户端存储数据方法:localStorage(),sessionStorage()
HTML5提供了两种在客户端存储数据的新方法: localStorage():没有时间限制的数据存储 sessionStorage():针对一个session的数据存储 下面的一个例子用localSt ...
- HTML学习笔记之三(localstorage的使用)
localstorage的使用 1.获取对象 var localstroage = window.localStorage; 2.存储值 localstroage.setItem('openid',' ...
- HTML5 学习总结(三)——本地存储(localStorage、sessionStorage、WebSqlDataBase、IndexedDB)
HTML5问世以后,前端加入了一个重要的功能,便是本地存储,本地存储可分为4类: Local Storage:总的存储量有所限制,并不能提供真正的检索API,数据的生命期比窗口或浏览器的生命期长,数据 ...
- 客户端相关知识学习(十二)之iOS H5交互Webview实现localStorage数据存储
前言 最近有一个需求是和在app中前端本地存储相关的,所以恶补了一下相关知识 webView开启支持H5 LocalStorage存储 有些时候我们发现写的本地存储没有起作用,那是因为默认WebVie ...
随机推荐
- NEO从入门到开窗(4) - NEO CLI
一.唠叨两句 首先,我们都知道区块链是去中心化的,其中节点都是对等节点,每个节点都几乎有完整的区块链特性,CLI就是NEO的一个命令行对等节点,当然也有GUI这个项目,图形化的NEO节点.节点之间需要 ...
- ZJOI2018游记
我是一只普及组的菜鸡,我很菜 我参加 \(ZJOI\) 只是来试试水(水好深啊~),看看大佬(差距好大啊~),以后要好好学习 \(day0\) 下午2:00,颁奖 还以为要到很晚,还是挺快的 \(da ...
- 自定义ArrayList
自定义实现ArrayList很简单,只需要明白下面几点 1.ArrayList 底层是由数组组成的 2.数组有容量限制,但是ArrayList并没有(实际上也有,Integer.MAX_VALUE). ...
- react的基本使用,及常用填坑
import React, { Component } from 'react'; import PropTypes from 'prop-types'; import './First.css'; ...
- 听翁恺老师mooc笔记(14)--格式化的输入与输出
关于C语言如何做文件和底层操作: 文件操作,从根本上说,和C语言无关.这部分的内容,是教你如何使用C语言的标准库所提供的一系列函数来操作文件,最基本的最原始的文件操作.你需要理解,我们在这部分所学习的 ...
- 利用PCA降维
参考:<机器学习实战>- Machine Learning in Action 一. 基本思想 PCA(Principal Component Analysis),主成分分析.是目前应用 ...
- Python科学计算(一)
作者 J.R. Johansson (robert@riken.jp) http://dml.riken.jp/~rob/ 最新版本的 IPython notebook 课程文件 http://git ...
- python简单路由系统
# 输入模块名/函数 url = input('请输入网址:') module,func = url.split('/') m = __import__('lib.'+module,fromlist= ...
- DML数据操作语言之查询(二)
当我们查询出了N条记录之后 ,我们知道一共是几条记录,或者这些记录某一字段(列值)的最大值,最小值,平均值等,就可以使用聚合函数. 1.聚合函数 聚合函数会将null 排除在外.但是count(*)例 ...
- 从PRISM开始学WPF(四)Prism-Module?
从PRISM开始学WPF(一)WPF? 从PRISM开始学WPF(二)Prism? 从PRISM开始学WPF(三)Prism-Region? 从PRISM开始学WPF(四)Prism-Module? ...