美文网首页
字节跳动前端面经

字节跳动前端面经

作者: WEB前端含光 | 来源:发表于2020-06-13 19:00 被阅读0次

    人生第一次面试,投了头条前端,总共经历了四轮技术面试和一轮hr面,不多说,直接上题:

    一面

    自我介绍,然后问了为什么学习前端

    算法:实现36进制转换

    简述https原理,以及与http的区别

    操作系统中进程和线程怎么通信

    node中cluster是怎样开启多进程的,并且一个端口可以被多个进程监听吗

    实现原生ajax

    vue-router源码

    vue原理(手写代码,实现数据劫持)

    算法:树的遍历有几种方式,实现下层次遍历

    算法:判断对称二叉树

    第一次面试,当时比较紧张,面试官很和蔼,面试中问到操作系统的进程,当时不记得操作系统,
    就提到了node多进程,然后面试官就问了cluster是怎样开启多进程的,并且一个端口可以被多个
    进程监听吗?答完后面试官就问了后面写完vue数据劫持的时候,面试官又问了Object.defineProperty除了
    set get外还有什么属性,我回答了configurable enumerable。vue-router主要提到了hashchange
    事件等,顺便跟面试官聊了一下h5的historyAPI。时间总共是50分钟左右,一面完了后面试官让
    我等五分钟,接下来二面就开始了
    二面

    介绍一下项目中的难点

    let var const 有什么区别

    你知道哪些http头部

    怎么与服务端保持连接

    http请求跨域问题,你都知道哪些解决跨域的方法

    webpack怎么优化

    你了解哪些请求方法,分别有哪些作用和不同

    你觉得typescript和javascript有什么区别

    typescript你都用过哪些类型

    typescript中type和interface的区别

    react怎么优化

    算法题:合并乱序区间

    笔者在回答http头部的时候,顺带跟面试官聊到了浏览器缓存,回答跨域的时候,面试官又
    让我用jsonp实现一下跨域,回答webpack的时候提到了happypack和treeshaking,面试官就
    顺带问了一下他们的作用,算法题我当时没有写出来(主要是因为菜),二面大概40多分钟结
    束,面试完后面试官说稍后hr会联系我,让我注意保持通信,还没过一小时,hr打电话约我
    第三次面试时间,不得不说,字节的效率真的高
    三面

    你了解node多进程吗

    node进程中怎么通信

    node可以开启多线程吗

    算法题:老师分饼干,每个孩子只能得到一块饼干,但每个孩子想要的饼干大小不尽相同。目标是尽量让更多的孩子满意。如孩子的要求是 1, 3, 5, 4, 2,饼干是1, 1,最多能让1个孩子满足。如孩子的要求是 10, 9, 8, 7, 6,饼干是7, 6, 5,最多能让2个孩子满足。

    算法题:给定一个正整数数列a, 对于其每个区间, 我们都可以计算一个X值;X值的定义如下: 对于任意区间, 其X值等于区间内最小的那个数乘上区间内所有数和;现在需要你找出数列a的所有区间中, X值最大的那个区间;如数列a为: 3 1 6 4 5 2; 则X值最大的区间为6, 4, 5, X = 4 * (6+4+5) = 60;

    <span style="max-width: 1000%;font-size: 15px;box-sizing: border-box !important;overflow-wrap: break-word !important;">三面大概是1小时,面试官比较冷漠,就问你知道不知道,算法思路,然后实现这个算法,</span>

    <span style="max-width: 1000%;font-size: 15px;box-sizing: border-box !important;overflow-wrap: break-word !important;">面试完感觉凉凉,但是第二天就收到hr到来的电话,约下一轮的面试时间。</span>

    四面

    算法题:两个有序链表和并成一个有序链表

    https与http有什么区别(一面刚好也被问到)

    cookie有哪些属性

    cookie,session,localstorage,sessionstorage有什么区别

    怎么禁止js访问cookie

    position有哪些属性

    你知道哪些状态码

    options请求方法有什么用

    less,sass它们的作用是什么

    平时怎么学习

    你什么时候可以来实现

    能实习多久

    <span style="max-width: 1000%;font-size: 15px;box-sizing: border-box !important;overflow-wrap: break-word !important;">四面算是比较简单的一次面试,面完后第二天晚上hr打来了电话,约与hr面的时间</span>

    hr面

    你什么时候接触前端的

    平时怎么学习

    对未来的规划是什么

    你对哪个项目印象深刻,说一下项目的难点

    你对我们公司有什么了解

    能实习多久等等

    <span style="max-width: 1000%;font-size: 15px;box-sizing: border-box !important;overflow-wrap: break-word !important;">hr面主要聊一聊人生理想,未来规划啥的,大概半小时的时间</span>

    四轮技术面+一轮hr面结束,学习到了不少,面试也是一个学习检测自己的过程,面试前大概复习了一周的时间,把以前的代码看了一下,字节跳动比较注重算法,面试前刷了下leetcode和剑指offer,也刷了些在牛客网上的面经。。

    想了解更多的可以加Q群:1093606290

    相关文章

      网友评论

          本文标题:字节跳动前端面经

          本文链接:https://www.haomeiwen.com/subject/iaeztktx.html