数据库
首页 > 数据库> > JS高级—17—JSON数据格式、Storage存储、IndexedDB数据库、Cookie存储;

JS高级—17—JSON数据格式、Storage存储、IndexedDB数据库、Cookie存储;

作者:互联网

 

一、JSON

1.1概念

json是一种数据格式,json数据格式的字符串和json数据格式的对象;

 

1.2json语法

 

1.3json的序列化和反序列化

localstroge里setItem()的value必须为一个字符串,如果传一个对象的话,默认会被转化成“【object object】”的字符串,这个根本没法使用;所以要用JSON.stringify将一个对象序列化为json格式的字符串;

 

 

JSON.stringify:可以将一个js对象,序列化为json格式的字符串;

JSON.parse:将json格式的字符串转化为js对象;

 

 

 

 

1.4json.string()详解:

可以有个3个参数,

第一个是要转化的对象,

第二个参数replacer是可以穿入一个数组或或者回调函数,回调函数表示对每一个key进行转化的时候可以自定义操作;

第三个参数space,表示字符串的间隔距离;

1.5json.parse

 

 

 

 

 

 

二、storage

 

 

 

 

 

 

 

 

 

 

三、indextedDB

 

 

 

 

 

 

四、cookie

4.1概念

一般的,cookie是由服务器主动发起,然后在客户端存储的一种机制;

比如说登录请求,登陆成功后,服务器会发送给浏览器一个cookie,然后让浏览器保存,后面浏览器发送的每次请求都要携带这个cookie。服务器每次处理浏览器发送的请求的时候,判断时候有cookie如果有cookie则处理如果没有则提示用户未登录;

服务器返回的响应信息,有set-cookie这一项;

 

 

4.2cookie的 属性

domin用于指定访问某些域名时,才让浏览器携带cookie;一般不用指定,用默认的即可;

 

4.3客户端设置cookie

虽然cookie一般都是服务器发出命令让客户端设置,但是有时候客户端也会自己设置cookie;

我们拿不到浏览器设置的cookie,但是可以使用document.cookie = '浏览器设置的cookie=xxx;max-age =0'的方式去删除浏览器设置的cookie;(注意要设置属性http=false,否则http=true的话只能通过http的方式才可以修改cookie)

我们也可以通过document.cookie = '自己设置的cookie=xxx;max-age =0'的方式新建自己设置的cookie;

 

 

 

 

 

4.4cookie的缺点:

第四个:客户端除了浏览器外还有ios、安卓、小程序等,它们对cookie的支持并不好,但是现在也要设置cookie,就很麻烦;

所以,目前cookie基本被token取代了;

 

标签:IndexedDB,存储,浏览器,JSON,json,cookie,设置,字符串,数据格式
来源: https://www.cnblogs.com/EricShen/p/16219376.html