首页 > 字节跳动 前端 Data 南京 面经分享
头像
Rana1996
编辑于 2020-10-01 20:13
+ 关注

字节跳动 前端 Data 南京 面经分享

双非渣硕非科班,9.29号收到字节Data部门的意向书,秋招正式结束😁
分享一下字节3轮技术面中的难题,希望能够帮到还没有上岸的各位朋友

9.15一面:
手撕算法:
1. 三个异步fetch请求,只要有一个请求变成resolve,那么就输出对应的result,并结束。如果请求过程中出现错误,则需要在最后输出错误信息
(我用Promise race,不过好像不能完美实现面试官提出的要求)
2. 字符串转千分位
(做过不知道多少遍了,结果后面用正则翻车了😂
3. 实现深搜索,例如对于这样一个数组city和指定的code,输出对应的name:
 var city = [
     {
         code : 0,
         name: 'beijing',
     },
     {
         code : 211,
         name: 'jiangsu',
         children: [
             {
                 code: 212,
                 name: 'nanjing'
             }
         ]
     }
 ]

function search(code) {
// code
    return name
} 
(递归搜索,也挺简单的)


9.15 二面
一面完之后直接二面,面试官是一个很开朗的小姐姐,体验很棒
手撕算法:
二面斯的代码令我印象非常深刻,因为是很简单的闭包,但里面的陷阱很多
// 实现一个foo函数, 返回自身被调用的次数 可以这么使用:
a = foo();
b = foo();
c = foo();
// 此时  a 的值是1;b的值是2;c的值是3;
foo.reset();
d = foo(); // d的值是1, 说明foo重新开始计数;
撕了大概30min,后面我都想放弃了,不过最后面试官还是告诉了我答案:
 const foo = (function(){
    let counter = 1;
    function increase(){
        return counter++;
    }
    increase.reset = function() {
        counter = 1;
    }
    return increase;
})()
二面整体比一面难很多,问的都是一些细节方面的问题,包括:
1. Vue和react的diff 算法的区别
(我:原来有区别?😂
2. Vue和React的不同点
3. React hooks用过吗
(我:莫得)
4. VueX和Mobx原理上的区别,和Redux又有什么区别
5. WebPack中Tree shaking的原理
6. TS中的泛型,使用TS带来了什么提升
(我:类型检查,面试官:😂


9.21 三面
三面据说是部门大佬面,不过感觉与二面相比,轻松了不少
手撕:
实现一个get函数,用来获取一个深嵌套对象中的值,例如:
var object = { 'a': [{ 'b': { 'c': 3 } }] };
get(object, 'a[0].b.c');
//应该返回 3
难点在于对象内部可能有数组,对于数组按下标方式取,需要特殊地解决


9.22 hr面
随便聊人生,包括:
你觉得自己这三次面试表现如何,能给自己打多少分
(我:60吧😂

9.29 经过漫长的等待,终于上岸了
希望有知道的老哥能否说一下南京data部门的工作情况?

更多模拟面试

全部评论

(9) 回帖
加载中...
话题 回帖

推荐话题

相关热帖

历年真题 真题热练榜 24小时
技术(软件)/信息技术类
查看全部

近期精华帖

热门推荐