抖音前端面经(一面二面)
抖音秋招一面
1. HTML
- inline, block, inline-block有什么区别?如何实现一个元素默认居中对齐,文字过长时居左对齐?
2. CSS
margin塌陷/合并问题如何解决? (备选)
3. JS
什么是类数组?有哪些?
闭包
防抖和节流怎么理解,并实现一个节流
JS事件循环
console.log(1); setTimeout(function () {console.log(2)}, 0); new Promise(resolve => { console.log(3); resolve(); console.log(4); }).then(() => { console.log(5); Promise.resolve().then(() => console.log(6)) }) console.log(7);
4. Vue
==VUE为什么称为渐进式框架,你怎么理解渐进式?==
对“渐进式”这三个字的理解:Vue渐进式-先使用Vue的核心库,再根据你的需要的功能再去逐渐增加加相应的插件。
了解VUE2.x的链路运作方式么?
5. 计算机网络
跨域。实现跨域方案有哪些?
常见的网络攻击方式有哪些?
==Ajax Fetch==
CDN是什么?什么是==回源==
https://blog.csdn.net/woleigequshawanyier/article/details/86369933
6. 计算机原理
- 栈和堆的区别?
7. 算法
- 最短路径
https://www.cnblogs.com/du001011/p/10486475.html?ivk_sa=1024320u
抖音秋招二面
1. 项目
什么时候接触前端的?怎么学习前端知识?
RN-web项目介绍一下?转化的包的原理知道吗?
2. 算法
- 二叉树遍历方式?==树的层次遍历==
代码
版本号比对
斤斤计较
3. 框架
Vue双向绑定的原理
==getter , setter缺点==
nextTick() 含义,用法 ==原理==
4. 智力题 5,3的容器倒出4升水
5.JS
- ==订阅-发布者模式==
class Event(){ on(name, cb); once(name, cb); emit(name, data); off(name, data); }#前端面试##字节跳动##面试题目#