1、typeof返回的数据类型:undefined string number boolean Object Function symbol
symbol是Es6中添加的新的数据类型,Symbol 本质上是一种唯一标识符,可用作对象的唯一属性名,这样其他人就不会改写或覆盖你设置的属性值(还没用过,有待研究)
2.检查数组的方式:Array.isArray() , instanceof Array, toString.call()
3、js中call、apply、bind方法的区别
三者都可以改变方法上下文,就是可以使函数可以被其它对象调用。
func.call(this, arg1, arg2);
func.apply(this, [arg1, arg2])
func.bind(this, arg1, arg2)()
call与apply作用相同,只是传参方式不同,而bind返回的是一个方法并不是立即调用的。
4、闭包的作用就是访问函数内部的变量
运行结果返回ff中的变量n闭包还有一个作用就是让闭包中的变量始终存在内存中,这样也容易引发内存泄漏(有待研究)
5、事件机制
事件捕获(event capturing): 由根节点从外向内进行事件传播。
事件冒泡(event dubbed bubbling): 与捕获相反,冒泡是从内向外进行传播直到根节点。
DOM事件有三个阶段:事件捕获阶段,事件目标阶段,事件冒泡阶段。
DOM的标准事件流处理顺序是先捕获再冒泡,即先调用子元素的事件,再调用父元素的事件。
阻止事件冒泡用e.stopPropagation()
addEventListener()第三个参数是是否采用事件捕获
以上如有不对,恳请大神指点,参考的文章:Web前端基础知识整理(一)
网友评论