什么是BFC
块级格式化上下文
如果给一个div写一个overflow:hidden,那么这个div里面的浮动元素就会被他包裹起来
css选择器的优先级
- 越具体优先级越高
- 卸载后面的,覆盖卸载前面的
- important最高
两种盒子模型
- 在标准的盒子模型中,width指content部分的宽度
- 在IE盒子模型中,width表示content+padding+border这三个部分的宽度
如果想要切换盒模型也很简单,这里需要借助css3的box-sizing属性
box-sizing: content-box 是W3C盒子模型
box-sizing: border-box 是IE盒子模型
box-sizing的默认属性是content-bo
清除浮动
.clearfix:after{
content:";
display:block/table;
clear:both;
}
.clearfix
加到容器上,里面的子元素的浮动就被清除了
手写ajax
var request=new XMLHttpRequest()
request.ope('GET','/xxx')
request.onreadystatechange=function(){
if(request.readyState===4){
console.log('请求完成')
if(request.response.status>=200&&request.response.status<300){
console.log('请求成功')
}else{}
}
}
request.send()
数组去重
- hash
- [...new Set(array)]
- WeakMap >支持所有类型的去重
事件委托
1、什么是事件委托?
事件委托就是利用冒泡的原理,将事件加到 父元素 或 祖先元素上,触发执行效果。
例:在 document 中绑定 click 事件,当 click 的对象为 按钮 btn 时,弹框显示 按钮 btn的值
事件冒泡
就是事件从最深的节点开始,然后逐步向上传播事件
HTTP缓存
ETag >MD5 >有请求
Expire >过期时间
Cach-Conrol > max age=600s >无请求
cookie和session
cookie > 服务器发给浏览器的一段字符串,浏览器每次访问对应域名的时候都要把这段字符串带上去
session 会话,表示浏览器与服务器一段时间内的会话
区别 :session是在服务器上的,cookie是在浏览器上的
一般是基于cookie实现的,把session id放到cookie里面就能实现session
cookie和localstorige的区别
1、大小限制:cookie 4k localstorige 5m
2、cookie是存放用户信息的,localstorige是用来存不重要的数据
3、cookie会被发送到服务器上的,localstorige是不发送到服务器上的
HTTP1和HTTP2的区别
多路复用 就是 链接共享
服务器推送 http2有一个server push功能
http2强制用https
watch 和computed的区别
watch是监听数据 没有缓存,只要一变就会进行操作
computed是计算属性,会有缓存,会在属性变化的时候再去计算
vue生命周期分别有什么用
在mounted里面会做一些数据请求
在created用来创建时的初始化
udated会用来做更新之后的事情
你是怎么使用vuex的?
vuex是一个专为vue.js应用程序开发的状态管理工具
vue响应式原理
object.defineroperty把属性全部转为getter/setter
vue Router
vue router是vue.js官方的路由管理器
vue router怎么做懒加载
import('./foo.vue') > 返回一个promise
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。