2019年的前端面试总结

总结一下2019年找工作时遇到的前端面试题 : 主要集中在vue方面,css,js, es6/7/8;vue 的面试题将会在另一篇文章上发布

先来看一下css 方面的面试题:

1.三栏布局的实现方式有哪几种

2.vh,vw 和%的区别

3.对BFC规范的理解

4.css书写规范

5.实现水平垂直居中

再来看一下js 方面的面试题:

1.经常会问道的问题 this的指向 基本就是以下几种情况:

  • 在方法中,this指向的是所有者对象
  • 在单独使用时,this指向的是全局对象
  • 在函数中,this指向的是全局对象
  • 在函数的严格模式下,this指向的是undefined
  • 在事件中,this指向的是接收事件的元素
  • 在使用call()和apply()这样的方法可以将this的引用到任何对象

2.数组去重的几种实现方法 

  • indexof
  • sort()排序后,相邻元素进行比较
  • 利用includes()检查时候有元素
  • set  [...new Set(arr)]

3.call(),apply()和bind()的区别

      call、 bind、 apply 这三个函数的第一个参数都是this的指向对象,第二个参数差别就来了:

      call 的参数是直接放进去的,第二第三第n个参数全都用逗号分隔,直接放到后面obj.myFun.call(db,'江西', ..., 'string')。

      apply的所有参数都必须放在一个数组里面传进去。

      bind除了返回函数以外,它的参数和call 一样。

4.什么是原型,为什么使用原型,原型链的结构 (这个大家自行百度)

5.普通函数和箭头函数的区别

  •  箭头函数是匿名函数,不能作为构造函数,不能使用new
  •  箭头函数不绑定arguments,取而代之用rest参数...解决         
  •  箭头函数不绑定this,会捕获其所在的上下文的this值,作为自己的this值               
  •  箭头函数通过 call()  或   apply() 方法调用一个函数时,只传入了一个参数,对 this 并没有影响。       
  • 箭头函数没有原型属性     
  • 箭头函数不能当做Generator函数,不能使用yield关键字

6.防抖函数和节流(这个大家自行百度)

7.js的继承方法有哪些?为什么要继承(这个大家自行百度)

最后来看一下es6/7/8方面的面试题:

1.你在项目中有用到那些es6/7/8的方法

2.Array新添了那些方法

3.async 和 await 有用过吗简述一下

4.promise的三种状态

5.promise.all和promise.race的区别

6.数组扁平化 (flat方法)

 

先暂时更新这么多,有一些问题没有答案的大家可以自行白度,vue面试题会集中写一篇文章,到时候会将链接沾到这里

链接来了 https://www.cnblogs.com/xiebeibei/p/12195782.html

posted @ 2020-01-13 15:10  程序媛小仙女  阅读(97)  评论(0编辑  收藏  举报