面试总结
面试方向:
项目经验(角色 + 职责)
前端基础(H5、CSS3、ES6)
框架基础(Vue、Angular、React)
工程化能力(webpack、nginx、linux命令、docker)
前台 + 前台交互(Promise、router、)
前台 + 后台交互(http)
新技术拓展(ssr、flutter)
关注点:
- 技术能力
- 沟通能力(自我介绍是否简介清晰?不清楚的问题如何应变处理?)
- 学习能力(是否看书?看博客?了解新兴技术吗?)
- 逻辑思维能力(场景分析,是否思路流畅?)
- 全局观念(是否封装过公共组件?是否有性能优化意识?)
技术点:
工作经验
- 项目中的角色 + 职责?(基础搬砖 or 高级搬砖?)
- 工作连续性?是否有断档?
- 加班情况?外包看法?
前端基础
- H5新特性有哪些?
- CSS定位相关?水平垂直居中?
- 重绘和回流的概念?
- 一次性定时器和周期性定时器?setTimeout(fn,0)用法
- 事件循环机制?setTimeout和Promise执行顺序?(高级)
- JS实现元素动态偏移,3S后停止?
- 回调函数。形态?传参(3个参数,第一个,第三个有值)
- js防抖和节流?
- 深拷贝 & 浅拷贝?
- 对象判空?对象合并?(中级)
- 闭包的使用?(中级)
- 变量提升?function?(中级)
- call,apply,bind用法区别?
- 如何理解JS是单线程语言?JS如何实现异步?高级
框架能力
- 生命周期:created和mounted有啥区别?beforeUpdate中可以操作data中数据吗?
- vue插槽分类?用法。--联系回调函数
- computed和watch用法区别?
- nextTick用法?
- vuex数据存储,遇到F5强制刷新问题处理?
工程化能力(webpack + nginx + docker + linux命令)
- 手动配置过webpack吗?
- 打包出来几个文件?一个文件和多个优势劣势?
- 配置一个命令如何配置?
- devServer相关(高级)
- 前端性能优化?(高级)
- loader和plugins的区别?(中级)
- bundle(webpack打包出来的包)?chunk(依赖分析时分割的代码块)?module(开发的单个模块)? (中级)
- webpack-dev-server和传统http服务器,如nginx服务器的区别?(webpack-dev-server使用内存来存储webpack开发环境下的打包文件,并且可以使用模块热更新,他比传统的http服务对开发更加简单高效)
(高级)
前台 + 前台交互能力(Promise + router)
- 手写Promise如何传值?
- 箭头函数有无return的区别?this指向?
- 模块化,有无default的区别?解构赋值是的区别?
- 路由守卫用过吗?push和replace的区别?
- 路由懒加载配置过吗?组件懒加载呢?
前台 + 后台交互能力(http相关)
- session和cookie的区别?
- 常用的http状态码?
- 什么是跨域?如何处理?(高级)
新兴技术
- ssr相关
- flutter相关
学习能力
- 常逛的网站?获取新知识的途径?(书籍?博客?视频?)
- 最近在读的书?(常用的前端书籍?)