1.介绍一下ajax:
ajax=异步javascript+XML ,ajax是用来实现局部刷新的。
ajax实现过程:
1)创建XMLHttpRequest对象,也就是一个异步调用对象
2)创建一个新的http请求,并指定请求的方法,url以及验证信息
3)设置响应http请求状态变化的函数
4)发送http请求
5)获取异步调用返回的数据
6)使用javascript和dom实现局部刷新
2.移动端适配:
1)px:固定像素
2)rem:根据html设置的font-size值进行等比例缩放
3)em:根据父元素设置的font-size实现等比例缩放
4)%:继承于父元素的宽度和高度
5)vw/vh:视口的宽度(高度)/100 * 自己设置的vw(vh)的值
3.浏览器的渲染过程:
1)浏览器获取HTML文档并解析成DOM树
2)处理CSS标记,构造层叠样式表模型CSSOM
3) 将DOM树和CSSOM合并成渲染树,并创建,它代表了一系列将被渲染的对象
4)渲染树中每个元素的内容都是计算过的,这一步称为布局,浏览器通过一种流式处理的方式,只需要一步绘制的操作就布局了所有的元素
5)将渲染树上的各个节点绘制到屏幕上,这一步称为绘制。
4.indexOf和includes的区别:
1)indexOf用来获取元素在数组中的下标,如果不存在则返回-1,如果有多个一样的元素,则返回第一次元素出现的位置 ,但它有两个不足之处,一个是语义化不强,表达不直观,另一个是使用全等进行判断,导致NaN误判。(如:console.log([NaN].indexOf(NaN))的值为-1)
2)includes用来判断数组中是否存在该元素,存在,返回true,否则,返回false。