最近打算换一个新工作所有总结了一些面试的知识点,希望能帮到大家。废话不多说直接上内容。
1.width: calc(100% - 2px); 四则运算
vw:viewpoint width,视窗宽度,1vw等于视窗宽度的1%。
vh:viewpoint height,视窗高度,1vh等于视窗高度的1%。
height: 100vh;就是高度全屏幕 可以试试
2.http 版本不同:1.长连接2.host域(建立tcp时一个ip对于一个主机对于一个host)3.带宽优化4.状态码
3.jsbridge:起原理是使用iframe已xml方式按照提前制定好的规定从而访问原生的功能
4.tcp三次握手:是为了减少服务器负担
5.DocumentFragment建立虚拟节点(不可选择)还可以先设置display:none创建完成再展示(减少重绘次数)
6.以下属性或方法会刷新渲染队列
- offsetTop、offsetLeft、offsetWidth、offsetHeight
- clientTop、clientLeft、clientWidth、clientHeight
- scrollTop、scrollLeft、scrollWidth、scrollHeight
- getComputedStyle()(IE中currentStyle)
7.feature queries css是不是使用display:flex grid布局 CSS网格组件介绍了一个新的长度单位 fr ,它表示网格容器中剩下的自由空间的一小部分。
8.vue的不足架构模式不是很清楚api到底是应该在vuex里面处理还是在组建里面处理;
9.vue使用object.defineProperty实现的响应式有两个缺陷。一不能检测到删除和增加属性这就是为什么data必须要声明,二如果对数组通过索引改变值不会被检测到。解决办法是Proxy但是兼容性不好
10.一行实现快排:
function quickSort(a) { return a.length <= 1 ? a : quickSort(a.slice(1).filter(item => item <= a[0])).concat(a[0], quickSort(a.slice(1).filter(item => item > a[0]))); }