实例1.cookie和session,localStorage,sessionStorage的区别
cookie:1.大小限制4kb,2.安全性:可以分析存在本地进行cookie欺骗3.存储:coolie主要是存在客户端的浏览器4.储存数据的类型:string(字符算类型)
session:1.大小:无限,2.安全性:相对安全3.存储:服务端4.储存类型在object(对象类型)
选择:考虑性能就选择cookie,考虑安全就选择session,建议重要的信息用session(如登录),其他信息可以用cookie
会话机制区别
session会话机制:session会话机制是一种服务端机制,它使用类似于哈希表(可能还有哈希表)的结构保存信息
cookies:会话机制:cookie是服务器存储在本地计算机的小块文本,并随每个请求发送到服务器。web服务器使用http标头将cookie发送到客户端,在客户端通过浏览器解析保存在本地文件,该文件自动将来自同一服务器任何请求绑定这些cookie

本地存储:cookie和localstorage,sessionStorage ,服务端存储:session

1.cookie在浏览器和服务器之间来回传值,而sessionStorge(object)和localStorage(object)紧存在本地,cookie可以通过路径来限制在某个路径下
 2.大小:cookie4kb,sessionStorge和localStorage都是无限
 3.数据有效性:sessionStorge:紧在关闭浏览器之前有效,localStorage:保存在本地,永久有效,即使关闭浏览器,cookie:在设置有效时间内有效,即使关闭浏览器
 4.作用域不同:sessionStrge不在不同的浏览器共享,即使是同一个页面2.localStorge和cookie在所有同源窗口中都是共享的sessionStorage和js的区别
 页面重新刷新或者跳到另外一个页面js重新加载,数据不存,而sessionStorage只要不关闭浏览器数据依然存在2.一个数组合并去重的函数
 let arr1 = [{
 name: ‘a’,
 count: 2
 }, {
 name: ‘b’,
 count: 3
 }]
 用function combination(){…}
 得出结果{count: 6name: “a”}3.setTimeout async await 宏任务,微任务
 let obj={a:1}
 async function addb(){
 return new Promise((resolve,reject)=>{
 setTimeout(()=>{
 obj.b=2
 resolve(obj)
 },0)
 })}
 addb().then(v=>{
 console.log(v)
 })async function async1(){
 console.log(1)
 await async2()
 console.log(2)
 }
 async function async2(){
 console.log(3)
 }
 console.log(4)
 setTimeout(()=>{console.log(5)})
 async1()
 new Promise((reject)=>{
 console.log(6)
 reject()
 }).then(()=>{
 console.log(7)
 })
 结果:4
 detail-video.vue:140 1
 detail-video.vue:145 3
 detail-video.vue:151 6
 detail-video.vue:142 2
 detail-video.vue:154 7
 {a: 1, b: 2}
 detail-video.vue:154 5
 4.vue的生命周期
 1.beforeCreat()实例创建之前
 created实例创建之后
 beforeMount()挂载前
 mounted() 挂载
 beforeupdate()数据更新之前
 updated 数据更新之后
 beforeDestroy()销毁前
 destroyed()销毁
 5.继承
 继承是对象和对象之间
 想要继承,就必须要提供父类(继承谁,提供继承属性)
 function person(name){
 this.name=name;
 this.sum=function(){
 alert(this.name)}
 }
 person.prototype.age=10;//给构造函数添加 了原型属性
 -.原型链继承
 function per(){
 this.name=“ker”}
 per.prototype=new person()
 var per1=new per()
 per.sun()
 console.log(per.age)
 console.log(per1 instanceof person);
 二.复制继承
 Object.prototype.extend=function(obj){
 for(var k in obj){
 if(this[k]==undefined){
 this[k]=obj[k]
 }
 }
 }
 var kitty={
 color:“yellow”,
 climb:function(){
 alert(“我在树上”)
 }
 }
 var height={color:“yellow and back”}
 height.extend(kitty)
 height.climb()
 三.原型冒(对象冒充)实现继承
 function Cat(color){
 this.color=color
 this.climb=function(){
 alert(“我在树上”)}
 }
 function Tiger(color){
 this.parent=Cat
 this.parent.call(this,color)
 this.bark=function(){
 alert(“孔孔”)}
 delete this.parent
 }
 var heihu=new Tiger(“yello and black”)
 for(x in heihu){
 console.log(x.toString)
 }
 6.闭包