前端面试题及答案2020_第1页
前端面试题及答案2020_第2页
前端面试题及答案2020_第3页
前端面试题及答案2020_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、名进行访问. const有块级作用域,枝持变量提升,不允许重复声明,暂存性死区。声 明-个变量-但声明就不能改变,改变报错。实现一个new的伪代码创建一个对象连接原型绑定this返回该对象原型、原型链原型链:每个被实例对象都有proto对象,它指向了构造该对象的构造函数 的prototype属性。同时该对象可以通过proto对象来寻找不属于自身的属性,原型:就是实现继承过程中产生的一个概念。继承原理是:复制父类的属性和方法来重写子类的原型对象原型继承 构造函数继承 组合继承 生继承 寄生组合继承 class等等闭包闭包就是有权访问一个函数内部变量的函数,也就是常说的函数内部嵌套函 数,内部函数

2、访问外部函数变量,从而导致垃圾回收机制没有将当前变回收掉。这样的操作,有可能会带来内存泄漏。好处就是可以设计私有的方法和变量。垃圾回收机制(闭包的延伸)js拥有特殊的垃圾回收机制,当一个变量在内存中失去引用,js会通过特殊的 算法将其回收,并释放内存。分为以下两个阶段:1 .标记阶段:垃圾回收器,从根对象开始遍历,问到的每一一个对象都会被 标示为可到达对2 .清除阶段:垃圾回收器在对内存当中进行线性遍历,如果发现该对象没有 被标记为可到达对象,那么就会被垃圾回收机制回收。这里面牵扯到了引计数法,每次引用都被会+1如果标记清零,那么就会被 回收掉。函数的节流和防抖防抖函数:将多次触发变成最后一次

3、触发;节流函数:将多次执行变成每隔一个时间节点去执行的函数calk apply 区别相同点:都是重定向this指针的方法。不同点:call和apply的第二个参数不相同,call是若干个参数的列表。apply 是一个数组手写一个call方法然后根据上面的方法再手写一个apply方法bindbind方法是直接返回一个新的函数,需要手动去调用才能执行。创建一个新函数,当这个新函数被调用时,bind()方法的第一个参数将作为 运行他的this,之后的一系列参数将会在传递的实参传入作为他的参数:特点:1 .返回一个函数。2 .可以传入参数;关于函数的调用作为一个正常的函数调用函数作为方法调用使用构造函

4、数调用函数作为函数方法调用函数捕获和冒泡捕获:就是从根元素开始向目标元素递进的一个关系;从上而下冒泡:是从目标元素开始向根元素冒泡的过程;想象一下水里的泡泡从下而 上。stoppropagation通常理解它是用来阻止事件冒泡的,其实该函数也可以阻止 捕获事件。简单介绍一下event loopjs作为单线程语言。在执行过程中,会产生执行环境。这些执行环境中的代 码被顺序的加入到执行栈中,如果遇到异步代码,会被挂起并加入到任务队列当 中,等到主线程任务执行完毕,event loop就会从任务队列取出需要执行的代码 放入到执行栈中执行。所以本质上来讲,js中的异步还是同步的行为。任务队列有分为宏任务和微任务队列。一次正确的event loop执行顺序如下:执行所有同步代码执行栈

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论