楼主双非一本大三上,通信专业,大二对前端很有兴趣,一直做一些小程序和网站之类的项目。
一面
- 自我介绍
- 曾经做过微信小程序的项目,所以从微信小程序入手,问了这几个问题:
- 微信小程序有哪些文件类型- 微信小程序传值方法- 微信小程序的异步问题- 微信小程序的生命周期- 微信小程序中 bindtap和catchtap- 怎么封装请求等(还有一些想不起来了,主要就是对于微信小程序实际应用场景中出现的问题深挖)
- 对于javascript提出几个问题:
- js有几种数据类型,怎么判断数据类型(我谈到内存,面试官说不用深挖)- js跨域- js中var ,let ,const的区别- js中箭头函数- js中的闭包- js中this的指向(详细)- js的事件流,冒泡与捕获- 经典的for和settimeout结合看输出判断代码题- 手写实现柯里化(还有一些也是想不起来了,但是都是很基础的问题,主要是考察对代码和基础的掌握程度与熟练程度)
二面
- 没有自我介绍,一上来就是看代码给输出,判断this在不同场景下的指向,关于call,apply,bind中this的指向。
- 计算机基础:
- tcp三次握手
- http1.0,1.1,2.0之间的区别和联系(从中深挖了很多,包括缓存,各种请求头,给定一个具体场景,判断一下要用什么方式解决等等,考察的是应用能力)
- js基础方面:
- 跨域,(还问了一些忘了,还是基础),手写深拷贝
- 了解前端工程化吗
- 平时运用vue和react多吗
总结
其实也面了很多次了,这一次面试我感觉还是很考察基础能力的,更希望有应用能力,判断不同情况下不同的处理方式。
拿到offer啦!未来加油❤️