1. position 的取值? (blog.csdn.net/yuxuan89814…
static : 默认
relative: 相对
absolute: 绝对
fixed: 固定
2. 为什么要清除浮动?
浮动本质是用来做一些文字混排效果的,但是被我们拿来做布局用,则会有很多的问题出现。由于浮动元素不再占用原文档流的位置,所以它会对后面的元素排版产生影响,为了解决这些问题,此时就需要在该元素中清除浮动
3, tcp/ udp 的区别
- 1、连接方面bai区别 TCP面向连接du(如打电话要先拨号建立连接zhi)。 UDP是无连接的,即发送数据dao之前不需要建立连接。
- 2、安全方面的区别 TCP提供可靠的服务,通过TCP连接传送的数据,无差错,不丢失,不重复,且按序到达。 UDP尽最大努力交付,即不保证可靠交付。
- 3、传输效率的区别 TCP传输效率相对较低。 UDP传输效率高,适用于对高速传输和实时性有较高的通信或广播通信。
- 4、连接对象数量的区别 TCP连接只能是点到点、一对一的。 UDP支持一对一,一对多,多对一和多对多的交互通信。
4,浏览器渲染过程(重绘 和 回流)
srtian96.gitee.io/blog/2018/0…
5,浏览器缓存

6. js事件处理机制
7, js 数组的常用api
8. js中 判断数据类型的几种方法
typeof与instanceof区别(www.jianshu.com/p/4ff233222…)
9.var let const区别?
zhuanlan.zhihu.com/p/104035051
10, null 和 undefined 的区别?
null表示"没有对象",即该处不应该有值。
undefined表示"缺少值",就是此处应该有一个值,但是还没有定义
11,从Object.definedProperty中看vue的双向数据的绑定
12, for in的缺点
for-in用来循环对象中的属性,但是通过for-in循环输出的属性名的顺序是不可测的。具体来说,所有属性都会被返回一次,但返回的先后次序可能会因浏览器而异。
不输出输出对象的toString,valueOf等内置属性(或称内置成员,隐藏属性和预定义属性)。即for in用来列举对象的显示成员(自定义成员)。
13,事件循环知道吗?
同步和异步任务分别进入不同的执行环境,同步的进入主线程,即主执行栈,异步的进入任务队列。主线程内的任务执行完毕为空,会去任务队列读取对应的任务,推入主线程执行。 上述过程的不断重复就是我们说的 Event Loop (事件循环)。
记住,JavaScript 是一门单线程语言,异步操作都是放到事件循环队列里面,等待主执行栈来执行的,并没有专门的异步执行线程。
14,手指点击可以触控的屏幕时,是什么事件?
**touchstart:**触摸开始的时候触发
**touchmove:**手指在屏幕上滑动的时候触发
**touchend:**触摸结束的时候触发
而每个触摸事件都包括了三个触摸列表,每个列表里包含了对应的一系列触摸点(用来实现多点触控):
**touches:**当前位于屏幕上的所有手指的列表。
**targetTouches:**位于当前DOM元素上手指的列表。
**changedTouches:**涉及当前事件手指的列表。
每个触摸点由包含了如下触摸信息(常用):
**identifier:**一个数值,唯一标识触摸会话(touch session)中的当前手指。一般为从0开始的流水号(android4.1,uc)
**target:**DOM元素,是动作所针对的目标。
pageX/pageX/clientX/clientY/screenX/screenY:一个数值,动作在屏幕上发生的位置(page包含滚动距离,client不包含滚动距离,screen则以屏幕为基准)。
15, DOM事件中target和currentTarget的区别?
-
target是事件触发的真实元素 -
currentTarget是事件绑定的元素 -
事件处理函数中的
this指向是中为currentTarget -
currentTarget和target,有时候是同一个元素,有时候不是同一个元素 (因为事件冒泡)- 当事件是子元素触发时,
currentTarget为绑定事件的元素,target为子元素 - 当事件是元素自身触发时,
currentTarget和target为同一个元素。
- 当事件是子元素触发时,
16,内存泄漏的原因和场景?(www.cnblogs.com/dasusu/p/12…)
虽然前端有垃圾回收机制,但当某块无用的内存,却无法被垃圾回收机制认为是垃圾时,也就发生内存泄漏了
1. 意外的全局变量
2. 遗忘的定时器
3. 使用不当的闭包
4. 遗漏的 DOM 元素
5. 网络回调
17. 图片懒加载?
当访问一个页面的时候,先把img元素或是其他元素的背景图片路径替换成一张大小为1*1px图片的路径(这样就只需请求一次),只有当图片出现在浏览器的可视区域内时,才设置图片正真的路径,让图片显示出来。这就是图片懒加载。
核心在于:判断图片是否出现在可视区域,出现在可视区域就将设置其真实 src
18,给定一个元素获取它相对于视图窗口的坐标
clientWidth、offsetWidth
offsetTop、offsetLeft (元素相对于父元素的top,left)
//获取元素的纵坐标(相对于窗口)
function getTop(e){
var offset=e.offsetTop;
if(e.offsetParent!=null) offset+=getTop(e.offsetParent);
return offset;
}
//获取元素的横坐标(相对于窗口)
function getLeft(e){
var offset=e.offsetLeft;
if(e.offsetParent!=null) offset+=getLeft(e.offsetParent);
return offset;
}
19,普通函数和构造函数的区别
1、构造函数也是一个普通函数,创建方式和普通函数一样,但构造函数习惯上首字母大写
2、构造函数和普通函数的区别在于:调用方式不一样
3、普通函数的调用方式:直接调用 person();
……