前端开发:头条三面-----凉

一面

1.实现duplicate()函数

var a = "123";
a.duplicate() // '123123"

答案

String.prototype.duplicate = function() {
    return this+this;    
}

2.this绑定问题,判断输出什么

window.name = 'ByteDance'; 
class A {
    constructor() {
      this.name = 123;
    }
    getA() { 
        console.log(this);
        return this.name + 1; 
    }
} 
let a = new A(); 
let funcA = a.getA;
funcA();
var length = 10;
function fn() {    
    alert(this.length) 
}
var obj = {
    length: 5,        
    method: function (fn) {
        fn()                    //10
        arguments[0]()  //1
    },
}
obj.method(fn);  

3.用正则表达式实现sprintf函数

const template = "My name is ${name},I'm from ${city}"; 
const result = sprintf(template, {
    name: 'Yiming Zhang',
    city: 'FuJian',
}); 
//result="My name is Yiming Zhang,I'm from FuJian"

答案:

const sprintf = (str, data) => ( Object.keys(data).reduce((prev, cur) => { let reg = new RegExp('\\$\\{' + cur + '\\}', 'g'); return prev.replace(reg, data[cur]);
    }, str);
);

4.设计一个函数,产生唯一的uuid
5.手写函数节流(不使用setTimeOut()和setInterval())

function throttle(wait, fn) {
    var prev_time = null;
    return function (){
            var now_time = new Date().getTime();
            if(!prev_time || now_time - prev_time>= wait) {
                prev_time = now_time;
                fn().apply(null, arguments); 
            }
    }
}

6.拥塞控制阶段
7.position的sticky属性
8.OSI七层模型

二面

1.mysql线程池
2.node如何启动多个进程
3.进线程通信
4.pm2启动运行多少个线程
5.rpc和http区别
6.koa如何写中间件
7.实现Promise.race( )函数
8.rpc是什么,rpc和http的区别

三面

1.实现倒计时
2.项目亮点(头条挂在了这里,哭)
3.双向绑定

结尾

二面和三面其实还问了一些东西,但是想不起来了。

#字节跳动##面经##校招##前端工程师#
全部评论
一面看来内容不少其他感觉问的不多
1 回复 分享
发布于 2019-08-20 00:02
当时有笔试嘛
点赞 回复 分享
发布于 2019-08-19 21:08
面的是什么岗呀
点赞 回复 分享
发布于 2019-08-20 00:12
你今天收到的拒信吗?...一面的代码题比我多好多
点赞 回复 分享
发布于 2019-08-21 18:59
本科?
点赞 回复 分享
发布于 2019-09-22 23:41
二面怎么看起来不太像前端的面试。。
点赞 回复 分享
发布于 2019-10-13 16:15

相关推荐

2024-12-27 23:45
已编辑
三江学院 Java
程序员牛肉:死局。学历+无实习+项目比较简单一点。基本就代表失业了。 尤其是项目,功能点实在是太假了。而且提问点也很少。第一个项目中的使用jwt和threadlocal也可以作为亮点写出来嘛?第二个项目中的“后端使用restful风格”,“前端采用vue.JS”,“使用redis”也可以作为亮点嘛? 项目实在是太简单了,基本就是1+1=2的水平。而你目标投递的肯定也是小厂,可小厂哪里有什么培养制度,由于成本的问题,人家更希望你来能直接干活,所以你投小厂也很难投。基本就是死局,也不一定非要走后端这条路。可以再学一学后端之后走测试或者前端。 除此之外,不要相信任何付费改简历的。你这份简历没有改的必要了,先沉淀沉淀
点赞 评论 收藏
分享
评论
1
29
分享

创作者周榜

更多
牛客网
牛客企业服务