g
g前端小生字节跳动今日头条前端面经(4轮技术面+hr面)
一面
自我介绍,然后问了为什么学习前端
算法:实现36进制转换
简述https原理,以及与http的区别
操作系统中进程和线程怎么通信
node中cluster是怎样开启多进程的,并且一个端口可以被多个进程监听吗
实现原生ajax
vue原理(手写代码,实现数据劫持)
算法:树的遍历有几种方式,实现下层次遍历
算法:判断对称二叉树
第一次面试,当时比较紧张,面试官很和蔼,面试中问到操作系统的进程,当时不记得操作系统,
就提到了node多进程,然后面试官就问了cluster是怎样开启多进程的,并且一个端口可以被多个
进程监听吗?答完后面试官就问了后面写完vue数据劫持的时候,面试官又问了Object.defineProperty除了
事件等,顺便跟面试官聊了一下h5的historyAPI。时间总共是50分钟左右,一面完了后面试官让
我等五分钟,接下来二面就开始了
二面
介绍一下项目中的难点
你知道哪些http头部
怎么与服务端保持连接
http请求跨域问题,你都知道哪些解决跨域的方法
webpack怎么优化
你了解哪些请求方法,分别有哪些作用和不同
你觉得typescript和javascript有什么区别
typescript你都用过哪些类型
react怎么优化
算法题:合并乱序区间
笔者在回答http头部的时候,顺带跟面试官聊到了浏览器缓存,回答跨域的时候,面试官又
让我用jsonp实现一下跨域,回答webpack的时候提到了happypack和treeshaking,面试官就
顺带问了一下他们的作用,算法题我当时没有写出来(主要是因为菜),二面大概40多分钟结
第三次面试时间,不得不说,字节的效率真的高
三面
你了解node多进程吗
node进程中怎么通信
node可以开启多线程吗
算法题:老师分饼干,每个孩子只能得到一块饼干,但每个孩子想要的饼干大小不尽相同。目标是尽量让更多的孩子满意。如孩子的要求是 1, 3, 5, 4, 2,饼干是1, 1, 最多能让1个孩子满足。如孩子的要求是 10, 9, 8, 7, 6,饼干是7, 6, 5,最多能 让2个孩子满足。
三面大概是1小时,面试官比较冷漠,就问你知道不知道,算法思路,然后实现这个算法,