字节跳动 AML 前端 一面

时长55mins

  1. 自我介绍

  2. 怎么接触的前端?学了多久?

  3. 问项目

  4. 为什么要做组件库?

  5. 问到我的组件库和AntD之类的有什么区别,我说区别可能就是我的功能更少?hhhh

  6. 设计一个组件的思路?

  7. 样式冲突问题

  8. 单元测试是什么?你用什么做的单测?

  9. 对于CSS 预编译语言的理解? (变量、混合、函数、模块化)

  10. 你使用的React的版本? (18.2)

  11. 18.2 对于17的区别? (没咋说出来,说了一些19的新功能)

  12. 常用的React Hook有哪些?

  13. Context 和 Redux 的区别?

  14. Hooks 的状态存在哪里? (fiber)

  15. useLayoutEffect 和 useEffect 的区别?

  16. Hooks 的使用规范,和条件语句是否能够一起使用,原因?

  17. 聊一聊你刚刚提到的 Fiber

  18. TSX/JSX 如何编译渲染到界面?

  19. Babel 是什么,Babel 转换原理是什么? (AST)

  20. JS类型有哪些?

  21. Symbol 是什么?BigInt 是什么?

  22. new object() 的流程?

  23. 闭包是什么?利用闭包实现一个计数器

  24. EventLoop是什么?浏览器事件循环和Nodejs事件循环有什么区别?

  25. 有哪些模块规范?(commonJS、es6系列)

  26. 两者有什么区别以及为什么有这些区别?

  27. 有没有听过说过 sourceMap?(没有)

  28. 怎么做前端工程化规范? (prettier、eslint、commitlint、webpack/vite、CI/CD)

  29. 你的项目一般部署在哪?

  30. Promise 有哪些静态方法?(all、race、allSettled)

  31. 说一说 Promise.allSettled 方法?

  32. async / await 原理?(generator语法糖)

  33. 实现一个request,可以在失败的时候重试,有interval和maxCount参数

``` js

async function request(options, interval, maxCount) {

let alreadyRetryCounts = 0

let result

const fetchData = async () => {

await fetch(options)

.then(res => result = res)

.catch(() => {

alreadyRetryCounts++

if (alredayRetryCounts <= maxCount) {

setTimeout(fetchData, interval)

}

})

}

await fetchData()

return result

}

```

* * *

反问:

  1. 技术栈

  2. 对我的评价和建议:

  3. 他评价基础好,建议是可以多参加一些团队项目

  4. 面试结果多久通知

* * *

总结:

第一次面字节,体验很好,感觉答得也不错,期待二面

相关推荐
IT_陈寒4 分钟前
Python搞不定字符串编码?这破玩意坑我两小时!
前端·人工智能·后端
DigitalOcean1 小时前
Laravel 开发者已在 DigitalOcean 上开通超过 10 万台服务器
前端·laravel
星始流年1 小时前
从 Tool 到 Skill——基于 LangChain 的服务端Skill实现
前端·langchain·agent
李惟2 小时前
开源本地通信库,纯客户端 RPC,像聊天一样通信
前端
YAwu112 小时前
深入解析 React 炫彩鼠标跟随标题组件:从坐标定位到动画性能
前端·react.js
GuWenyue2 小时前
排序效率低?5分钟吃透快速排序,性能飙升至O(nlogn)
前端·javascript·面试
OpenTiny社区2 小时前
🎨 看完 GenUI SDK 源码我悟了!
前端·vue.js·github
叁两2 小时前
前端转型AI Agent该如何学习?(前置篇)
前端·人工智能·node.js
何时梦醒2 小时前
深入理解递归与快速排序 —— 从基础入门到手写实现
前端·javascript
爱勇宝2 小时前
淡泊名利之前,先承认我们都很焦虑
前端·后端·程序员