字节跳动pico前端校招(base上海)面经(一面二面三面)
字节pico前端跨部门转正(base上海)面经
备注: 原本实习的部门无hc了,所以mentor帮忙联系,之后发起了跨部门转正,流程很快,已意向
一面(2022/08/22)
自我介绍
为什么想做前端
localStorage如果不能用怎么缓存数据(和实习经历有关)
为什么想要用localStorage?有对localStorage做清除吗?
react的class component, function component区别
class在es5和es6以后有什么区别
__proto__和prototype的区别
事件循环,具体比如setTimeout回调如何执行
react 双缓存树
对跨端的认识
用过react以外的框架吗
代码题:
-
假设有一个请求类Request,有如下两个方法.实现一个自定义hook,使用Request进行请求,可以实现组件在销毁的时候,能够取消正在进行中的请求
function Request() {} Request.prototype.request = function(url):Promise<any> {}; Request.prototype.cancel = function(): Promise<void> {};
二面 (2022/08/25)
实习期间做了什么?
bff部署流程有了解吗?
网页组件做了什么?
对跨端的理解?
对哪个方向更有兴趣?
对自己之后提升技术水平有什么规划?
对px的理解?和屏幕分辨率的关系?
计算机屏幕是怎么成像的?
html如何解析成为dom树?
html代码如何传到浏览器端的?建立连接的过程?
OSI七层模型?
对cdn的了解?怎么获取最近的服务器?
SSR?
对SPA的了解?
下面这段代码的运行结果:
Object.prototype.a = 'object'; Function.prototype.a='function'; function Person(){}; var child = new Person(); console.log(Person.a); console.log(child.a);
设计实现element.js模块(对虚拟DOM的理解和简单实现)
const el = require('./element.js'); const ul = el('ul', {id: 'list'}, [ el('li', {class: 'item'}, ['Item 1']), el('li', {class: 'item'}, ['Item 2']), el('li', {class: 'item'}, ['Item 3']) ]); const ulRoot = ul.render(); document.body.appendChild(ulRoot); dom输出: <ul id='list'> <li class='item'>Item 1</li> <li class='item'>Item 2</li> <li class='item'>Item 3</li> </ul>
三面(2022/08/30)
实习期间做了什么?对业务的了解?为什么不在本部门转正?
专业是什么?
base地?
部门项目里用了哪些基建?
对redux的了解?一个项目只能有一个store吗?
知道requestAnimationFrame吗?
假设要做无限下拉加载怎么做?
有没有自己搭建过独立项目,写过路由?browserRouter如果能操作服务器,怎么设置?
认为自己性格上最突出的一个优点是什么?
#前端##2023秋招##字节跳动##面经#