js-权威指南学习笔记20
第二十章 客户端存储
1、客户端存储有一下几种形式:Web存储、cookie、IE userData、离线Web应用、Web数据库、文件系统API。
2、Web存储标准所描述的API包含localStorage对象和sessionStorage对象。这两个对象实际上是持久化关联数组,是名值对的映射表。
3、cookie的API不方便使用,而且只适合存储少量文本数据。任何以cookie形式存储的数据,不论服务器端是否需要,每一次HTTP请求都会把这些数据传输到服务器端。
4、localStorage和sessionStorage两者的区别在于存储的有效期和作用域的不同:数据可以存储多长时间以及谁拥有数据的访问权。
5、localStorage存储的数据是永久性的,除非Web应用可以删除存储的数据,或者用户通过设置浏览器配置来删除,否则数据将一直保留在用户的电脑上,永不过期。sessionStorage存储的数据在窗口或者标签页被永久关闭时被删除。
6、localStorage的作用域限定在文档源级别,通过协议、主机名以及端口三者来确定的。同源的文档间共享相同的localStorage数据。localStorage的作用域也受浏览器供应商的限制。
7、sessionStorage的作用域也限定在文档源中,因此非同源文档间是无法共享sessionStorage的。不仅如此,它的作用域还被限定于窗口中。如果同源的文档渲染在不同的浏览器标签页中,那么它们互相之间拥有的是各自的sessionStorage数据,无法共享;一个标签页中的脚本是无法读取或者覆盖由另一个标签页脚本写入的数据,哪怕这两个标签页渲染的是同一个页面,运行的是同一个脚本也不行。
8、对象和数组类型的值通常是可变的,因此存储对象要求存储它们的副本,以确保之后任何对这类对象的改变都不影响到存储的对象。
9、如果浏览器有两个标签页都打开了来自同源的页面,其中一个页面在localStorage上存储了数据,那么另外一个标签页就会接收到一个存储事件。window对象的onstorage属性。
10、cookie是指Web浏览器存储的少量数据,同时它是与具体的Web页面或者站点相关的。cookie最早是设计为被服务端所用的,从最底层来看,作为HTTP协议的一种扩展实现它。cookie数据会自动在Web浏览器和Web服务器之间传输的,因此服务端脚本就可以读写存储在客户端的cookie的值。
11、cookie默认的有效期很短暂,它只能维持在Web浏览器的会话期间,一旦用户关闭浏览器,cookie保存的数据就丢失了。要注意的是,这与sessionStorage的有效期是有区别的:cookie的作用域并不局限在浏览器的单个窗口中,它的有效期和整个浏览器进程一致。可以通过设置max-age属性延长有效期。
12、和localStorage和sessionStorage类似,cookie的作用域是通过文档源和文档路径来确定的。该作用域通过cookie的path和domain属性也是可以配置的。默认情况下,cookie和创建它的Web页面相关,并对该Web页面以及和该Web页面同目录或者子目录的其他Web页面可见。
13、cookie的名值中的值是不允许包含分号、逗号和空白符,因此,在存储前一般可以采用JS核心的全局函数encodeURIComponent()对值进行编码,相应地,读取cookie值的时候采用decodeURIComponent()函数解码。
14、为了更好地查看cookie的值,一般会采用split()方法将cookie值中的名值对都分离出来。
15、想要将应用程序“安装”到应用程序缓存中,首先要创建一个清单(.appcache):包含了所有应用程序依赖的所有URL列表,然后通过在应用程序主HTML页面的<html>标签中设置manifest属性,指向到该清单文件就可以了。清单文件的首行内容必须以“CACHE MANIFEST”字符串开始。
16、当一个Web应用从缓存中载入的时候,所有与之相关的文件也是直接从缓存中获取。在线状态下,浏览器会异步地检查清单文件是否有更新。
17、对于简单的Web应用而言,在更新清单文件之后,用户必须载入应用两次才能保证最新的版本生效:第一次是从缓存中载入老版本随后更新缓存,第二次才从缓存中载入最新的版本。
18、通过navigator.onLine属性,可以检测浏览器是否在线,同时,在window对象上注册在线和离线事件的处理程序,可以检测网络连接状态的改变。
js-权威指南学习笔记20的更多相关文章
- js权威指南---学习笔记02
1.JS只有函数作用域,没有块级作用域这个概念: 它有一个特性——声明提前:在同一个函数中不同位置声明的变量,都被提前在函数开始的时候,执行声明操作:在原先位置执行赋值操作: 2.声明的全局变量,相当 ...
- js权威指南学习笔记(四)对象
1.创建对象 (1).通过对象直接量的方式创建 说明:对象直接量是由若干名/值对组成的映射表,名/值对中间用冒号分隔,名/值对之间用逗号分隔,整个映射表用花括号括起来. 如: 5 5 ...
- js权威指南学习笔记(一)类型、值和变量
1.数据类型:原始类型(primitive type) 和对象类型(object type) 原始类型包括数字.字符串和布尔值: 除数字.字符串.布尔值.null(空).undefined(未定义), ...
- js权威指南---学习笔记01
1.当函数赋值给对象的属性时,就变为了方法:2.被零整除不报错,只会返回无穷大(Infinity)或者负无穷大.例外:零除以零等于非数字(NaN).3.NaN与任何值都不相等! 4.Javascrip ...
- js权威指南学习笔记(三)语句
1.声明语句 如果用var声明的变量没有初始化,那么这个变量的值会被初始化为undefined. 函数声明语句的语法如下: 4 4 1 console.log(func ...
- js权威指南学习笔记(二)表达式与运算符
1.数组初始化表达式 数组直接量中的列表逗号之间的元素可以省略,这时省略的空位会填充undefined.如: 2 2 1 var arr = [1,,,,,6]; 2 ...
- JavaScript 权威指南-学习笔记(一)
本文所有教程及源码.软件仅为技术研究.不涉及计算机信息系统功能的删除.修改.增加.干扰,更不会影响计算机信息系统的正常运行.不得将代码用于非法用途,如侵立删! ## JavaScript 权威指南-学 ...
- 《JS权威指南学习总结》
JS权威指南学习总结:http://www.cnblogs.com/ahthw/category/652668.html
- 《JS权威指南学习总结--开始简介》
本书共分成了四大部分: 1.JS语言核心 2.客户端JS 3.JS核心参考 4.客户端JS核心参考 其中 <JS权威指南学习总结--1.1语法核心> 是:第一部分JS语言核心 各章节重点 ...
- HTTP权威指南-学习笔记
目录 HTTP权威指南-学习笔记 HTTP: Web的基础 URL与资源 HTTP报文 连接管理 HTTP结构 Web服务器 代理 缓存 集成点: 网关,隧道及中继 Web机器人 识别,认证与安全 客 ...
随机推荐
- C标准库pow函数精度问题。
#include <stdio.h> int main () { int temp,i; double a=2.4568; unsigned ]; ;i<;i++) { temp=( ...
- SQL高效查询两个表不同的数据
逻辑相对复杂,但是速度最快: )
- vue 3D小球 loading
<template> <div class="load"> <div class="loadEffect"> <spa ...
- Git使用、Git配置、Git提交代码、Git上传
非教程,只是自己的一个简单笔记.建议没有入门的朋友,直接看git的官方help文档: https://help.github.com/articles/set-up-git 1.注册一个git账号,超 ...
- android电量优化 总结
移动设备电池容量小,耗电较快(基本一天一充) ,故我们在应用开发使用相关组件和方法时候必须考虑耗电情况: 一 通过Battery Historian查看手机的耗电状况, 可以知道Android的在 ...
- 多态、抽象类、接口_DAY09
1:多态(掌握) (1)多态概念:一种事物的多种形态 (2)体现:父类的引用指向其子类的实例对象;接口的引用指向其实现类的实例对象 (3)特点: 成员方法:编译看左边,运行看右边 运行:子类重写的方法 ...
- logstash-2-插件配置
配置语法: Logstash必须有一个 input 和一个 output 1, 处理输入的input 1), 从文件录入 logstash使用一个名为 filewatch的 ruby gem库来监听 ...
- Nginx图片防盗链【实战】
访问我的博客 前言 博主目前在一家原创小说网站公司工作,由于站内的作品全部是原创,于是乎不可避免地会被一些盗版网站爬取盗版,对于防盗版一直没有很好的对策,让公司很是苦恼. 最近去一些盗版网站上搜索我们 ...
- python get请求
#!/usr/bin/python #-*- coding:UTF-8 -*-#coding=utf-8 import requests import time import hashlib impo ...
- Spring注解 @Configuration
Spring注解 @Configuration 一.@Configuration的作用 二.@Configuration的Spring容器启动方式 三.不加@Configuration的@Bean的解 ...