发表于: 2018-12-31 19:39:03
1 708
今天完成的事:
学习JS实现把一个页面层数据传递到另一个页面的几种方式:
localStorage的优势
1、localStorage拓展了cookie的4K限制
2、localStorage会可以将第一次请求的数据直接存储到本地,这个相当于一个5M大小的针对于前端页面的数据库,相比于cookie可以节约带宽,但是这个却是只有在高版本的浏览器中才支持的
localStorage的局限
1、浏览器的大小不统一,并且在IE8以上的IE版本才支持localStorage这个属性
2、目前所有的浏览器中都会把localStorage的值类型限定为string类型,这个在对我们日常比较常见的JSON对象类型需要一些转换
3、localStorage在浏览器的隐私模式下面是不可读取的
4、localStorage本质上是对字符串的读取,如果存储内容多的话会消耗内存空间,会导致页面变卡
5、localStorage不能被爬虫抓取到
localStorage与sessionStorage的唯一一点区别就是localStorage属于永久性存储,而sessionStorage属于当会话结束的时候,sessionStorage中的键值对会被清空
这里我们以localStorage来分析
首先在使用localStorage的时候,我们需要判断浏览器是否支持localStorage这个属性
localStorage的写入,localStorage的写入有三种方法:
localStorage的使用也是遵循同源策略的,所以不同的网站直接是不能共用相同的localStorage。
localStorage只支持string类型的存储。
localStorage的读取:
推荐的使用的是getItem\setItem这两种方法对其进行存取,
注意事项:一般我们会将JSON存入localStorage中,但是在localStorage会自动将localStorage转换成为字符串形式
这个时候我们可以使用JSON.stringify()这个方法,来将JSON转换成为JSON字符串
读取之后要将JSON字符串转换成为JSON对象,使用JSON.parse()方法
打印出来是Object对象
另外还有一点要注意的是,其他类型读取出来也要进行转换
明天计划的事:对于任务二中的数据的传递还太明白,理清基本逻辑
1.人数确定以后,创建出玩家数量
2.然后给玩家分配身份,
3.最后,将玩家数组传到下个页面
遇到的问题:不知道该怎么去写这些逻辑语法,找不到下手点。
收获:通过使用locationstorage对页面间进行数据的传递.
评论