字节跳动面试题 · JavaScript
字节跳动相关面试题,按最终去重题目聚合。
共 3252 道真题 · 当前筛选命中 71 道 · 更新 2026-08-05
筛选题目已选:JavaScript
考察点
技术栈
第 1 题箭头函数和普通函数有什么区别? 考察对JavaScript函数语法、this绑定及适用场景的理解第 2 题实现一个Promise.all 考察对Promise并发控制、错误处理和返回值语义的理解与编码能力第 3 题JavaScript 中有哪些数据类型?它们分别有什么特点? 考察对 JavaScript 基础数据类型及其特性的掌握程度第 4 题讲一下作用域链,为什么在try-catch里catch(err)中的err是块级作用域,但try里不是? 考察JavaScript作用域链机制及try-catch特殊作用域规则第 5 题TypeScript在浏览器能直接运行吗?怎么编译成JavaScript? 考察对TypeScript编译机制和浏览器运行环境的理解第 6 题若需使用POST请求接收SSE流式数据,EventSource默认只支持GET,有何替代方案? 考察对SSE局限性的认识与fetch流式读取能力第 7 题HTML解析过程中碰到一个<script>标签,浏览器会怎么处理 考察浏览器解析HTML时对script标签的处理机制及阻塞行为第 8 题请谈谈你对 JSBridge 的了解。 考察对 Web 与原生双向通信机制的理解第 9 题请手写实现一个 new 操作符,并说明其执行过程。 考察对JavaScript原型链、构造函数和this绑定的理解及编码实现能力第 10 题Object.keys 和 for...in 方法有什么区别? 考察对JS枚举可枚举属性和继承属性的理解第 11 题在 JavaScript 中沿着原型链查找属性时,应该使用哪个属性向上查找? 考察对 JavaScript 原型链机制和属性查找路径的掌握第 12 题请实现一个带超时控制的 Promise,要求指定时间内未完成则 reject。 考察 Promise 原理、异步控制与超时边界处理能力第 13 题请介绍你在项目中如何实现拖拽功能,以及如何设计图片懒加载策略,说明在什么情况下加载、什么情况下不加载。 考察前端交互实现能力与资源加载优化意识第 14 题浏览器获取到 HTML 后是如何渲染出页面的? 考察浏览器渲染流程的理解和关键性能优化点第 15 题请手写实现一个节流函数,并说明与防抖的区别。 考察节流实现、与防抖的区分及适用场景第 16 题如果我有一个变量在setTimeout里修改了值,而外部同时访问这个值,能保证拿到最新值吗?为什么? 考察JavaScript事件循环、单线程模型和异步执行顺序的理解第 17 题JS基础数据类型有哪些?通过哪些方法可以判断一个变量是数组类型?请至少说出5种方法。 考察对JavaScript基础数据类型和数组类型判断方法的掌握程度第 18 题请说明 JavaScript 中宏任务与微任务的执行顺序,并举例说明。 考察事件循环中宏任务与微任务执行顺序的理解第 19 题做骨架屏时,怎么判断骨架内容和真实内容之间的切换时机? 考察前端加载体验优化中骨架屏切换时机的设计第 20 题JS 是单线程,为什么可以实现并发加载多个接口? 考察事件循环、异步 I/O 与并发模型的理解