记录一次字节跳动的面试

204 阅读2分钟

额一面估计GG 好多问题没回答出来 啊啊啊 我好菜啊 给大家分享下 大概问了40个左右的问题 前面大部分是项目的

一共一个半小时

失败原因:没准备充分 没想到会给面试机会 不过机不可失失不再来 平常还是要多积累

记录一下大致记得的问题

这次的面试给我的印象是 不只问概念 问原理

准备的有点仓促

大概记录了一下问的问题

一面

1.项目问了大概十几分钟

2.取消网络请求

3.Promise原理 不是 三种状态那个(概念) 后面才知道问的是 Promise A+规范

4.async await 原理 maybe是 generator?

5.事件轮询 微任务 宏任务 微任务之后做什么

6.浏览器垃圾回收机制

7.Map 和 weekMap的区别

8.变量提升

9.暂时性死区

指在代码块内,使用 let 或 const 命令声明变量之前,该变量都是不可用的。这段时间内,如果尝试访问该变量,将会抛出 ReferenceError。这个区域被称为“暂时性死区”。

10.Class 继承的时候为什么要执行super 可不可以不调用

11.说一下this的指向 箭头函数的指向问题

12.BFC 知道应在哪 概念不怎么清楚

13.页面接收index.html文件后到渲染做了什么 问了 Dom树 渲染树 规则树 他们的先后顺序

14.js 解析 和 Dom解析 是不是互斥的 为什么

15.webpack loader和插件的区别 插件处理详细流程

16.webpack 构建 从输入命令行到构建完成 执行了什么

17.https怎么建立连接 注:不是 http

18.讲一下SSL连接过程

19.什么是证书 为什么要证书 证书的原理

20.tcp和udp的区别 udp需要建立连接吗

21.http2和http1.1的区别

22.pina原理

23.http多路复用

24.三道手写题

25-1 订阅

实现 on emit off once

25-2 回收

初始化一个类 容量为n 然后

put 插入数据 加入下个数据的时候 容量不足 移除最不常用的数据

get 返回key(加入数据的时候加入的)对应的值 没有(被移除) 返回-1

23-3 函数柯里化?(貌似)

24.补充 css 的解析 是从父到子 还是子到父