一、话术类
- 自我介绍
- 结合自身学习介绍项目
- 介绍一下你最难的项目
- 用 node.js 做过什么东西?
- websocket 怎么做的聊天服务器
- 有什么想问的吗?
- 如何看待 Vue 和 React 这些框架带来的好处?
- 模块开发的好处?
- 如果让你封装自己的组件应该怎么做?
10.面对新的框架和技术你怎么学习?
11.你怎么规划未来的前端学习?
12.为什么打算来这?
13.你的期望薪资?
14.你在学校做了哪些对自己有意义的事?
二、JS
1、基础知识
- JS数据类型(必问)
- 判断数据类型的方法(必问)
- 作用域 -> 变量提升 -> 执行上下文 -> 原型链 -> 继承(必问)
- this的指向
- 闭包
- Promise
2、进阶
1.用类写一个发布订阅者模式
2.统计页面标签个数? 获取所有标签,将每个标签的标签名放入数组中,统计数组中不一样的元素的个数
三、CSS
- Flex布局,实现两个子元素垂直,并且一个靠右一个靠左 (flex布局需要掌握透彻,必问)
- Css画圆有哪些方式?
- BFC IFC
- 双飞翼模型 圣杯布局
- Css的position的常见属性,sticky用过吗?
四、网络
1、网络基础知识
1.HTTP 和 WebSocket
2.TCP 三次握手和四次挥手
3.http的请求方法
4.http常见状态码(必问)
5.TCP 和 UDP区别
6.为什么浏览器的请求有两次,一次options,第二次才是真正请求?哪些场景用到
7. get 和 post 区别?
2、网络安全
- 常见的网络攻击,以及解决攻击方式
五、浏览器
- 浏览器事件循环机制
- node 事件循环机制呢?
- 浏览器如何渲染
- 进程和线程的区别
六、框架
- 谈谈对 vue 和 react 的理解,以及他们的区别
- vue 常用指令说一下
- 父子组件传值?多个组件共享状态?有什么更好的处理方法?(vuex或者其他状态管理解决方案)
- vue-router 用过吗?说一下它常见的钩子函数
- vue路由的 hash 和 history 模式?
- vue 自定义指令
- vue 双向绑定原理
- vue 虚拟DOM 的 Diff 算法
- 最近出了 Vue 3.0,有了解过它与 Vue 2.0 的区别吗?
10.Vue 3.0 的 Composition API 有了解吗?
11.vue组件的 data 为什么是一个函数
七、算法
1.模拟一个队列
2.数组扁平化?至少两种方法实现
3.场景题,5种颜色的球,每种颜色球有无数个,每人每次拿两个球,问至少多少人拿,才能保证至少有两个人拿的球一模一样。
4.编程题:找出一组数中两两相加为零的所有组合
5.说一说快排