前端面试

做者:爱前端不爱恋爱
连接:https://zhuanlan.zhihu.com/p/76798879
来源:知乎
著做权归做者全部。商业转载请联系做者得到受权,非商业转载请注明出处。

 

js类

  1. addEventListener,第三个参数的做用
  2. js事件阶段(捕获>目标>冒泡),阻止冒泡有哪些方法(3/8)
  3. 如何监听dom的变更(Mutation Observer)
  4. 简述Event loop/描述场景问你执行顺序等,要熟悉事件循环机制(4/8)
  5. 了解宏任务和微任务吗,请各举几个常见的/宏任务与微任务哪一个先执行(3/8)
  6. 简述原型,原型链/描述场景问指向等(3/8)
  7. es6平时开发中经常使用那些属性(2/8)
  8. es6的class与其继承如何实现(2/8)
  9. 箭头函数和普通函数有什么区别/箭头函数的优势
  10. promise的状态(peding,fulfilled,rejected,状态一旦肯定不可更改)
  11. call,apply,bind的做用与不一样之处
  12. 你知道几种深拷贝的方法

html类

  1. html5有什么新的特性

css类

  1. 简述下flex布局
  2. 简述下grid布局
  3. 你能够用几种方式来实现水平垂直居中
  4. css3有哪些新的属性
  5. position有哪些值/absolute以什么做为父级/简述sticky属性(3/8)
  6. 了解BFC吗,BFC能够用来解决什么问题
  7. display:none和visibliy:hidden的区别

vue类(简历中有写经常使用技术栈为vue)

  1. 双向绑定原理(频率很高,6/8左右
  2. vue3.0和2.0双向绑定的区别,这样的改动有什么好处(2/8)
  3. vue-router的实现原理,history和hash模式有什么区别
  4. 虚拟dom为何效率高
  5. 请描述vue生命周期
  6. keep-alive是否与普通组件有同样的生命周期,若是不是,它有哪些钩子(2/8)
  7. vue如何实现seo/为何会被seo搜索到,ssr的生命周期与普通vue生命周期有什么不同
  8. computed如何得知数据变化/computed有缓存吗(2/8)
  9. $nextTick原理
  10. vue父子组件传参有哪些方式(5/8)
  11. v-if和v-show有什么区别(3/8)

http类

  1. 跨域有哪些方式,有些面试会问jsonp和Nginx的原理,其余的原理却是没怎么问(★跨域面试必问)
  2. jsonp回调函数参数格式/如何设置回调(相似这样的问题,有点记不清了)
  3. 后端修改请求头,实现cros跨域时,在发送post请求以前会先发送什么
  4. 列举一些http状态码,每一类起码都要列出几个来(3/8)
  5. http,tcp,ip各处在什么层
  6. http2.0与http1.x相比有哪些优化/http发展历程
  7. http都有哪些请求方式
  8. 了解过http链接池吗
  9. 浏览器的缓存机制,如何实现协商缓存(etag)(3/8)
  10. 简述从浏览器输入地址到页面渲染完成之间发生了什么

性能类

  1. 实际项目中作过的性能优化,优化以后效果怎么样(★性能优化几乎必问)
  2. 一个页面中有大量的数据,如何优化页面(3/8)
  3. 一个页面中有大量的图片,如何优化页面(2/8)
  4. 图片除了雪碧图,还有什么能够优化的方式
  5. 为何gzip不压缩图片
  6. 单页应用的首屏优化
  7. 请简述cookie,localstorage,sessionstorage的区别(2/8)

技术其余类

  1. 平时的工做中如何保证产品在不一样浏览器中的兼容问题
  2. 有考虑过前端模块化的问题吗
  3. 对webpack有没有了解,本身有写过webpack配置文件吗/是否有改过webpack的配置
  4. 对脚手架工具备没有了解,本身有实现过吗
  5. 搭建项目时会对总体的开发作哪些考虑/搭建项目时会考虑哪些因素,会作哪些规划
  6. 如何制做骨架屏
  7. 是否了解过seo
  8. 简述mvc和mvvm
  9. 请简述重绘和重排(2/8)
  10. (若是简历有写使用ts)简述使用ts的好处