字节跳动前端面经(1h版)
1.浏览器从输入url到页面渲染的过程
2.浏览器做了哪些工作解析HTML最终形成页面展示(渲染过程)
3.对js的解析是解析什么内容
4.就是假设我们已经解析完了,不管它是解析什么内容,那解析完之后的话,它其实会有一个事件循环的机制,介绍一下js的事件循环机制
5.事件循环在nodejs和浏览器的区别
6.vue3的vue2响应式的话有哪些区别
7.vue3实现一个自定义的响应式的数据应该怎么实现
8.对于引用类型和基础类型的ref 实现上有什么区别?
基础类型通过包装对象实现响应式,引用类型则借助 reactive 转换为代理对象,两者最终都通过 .value 访问,但内部处理机制不同。
9.vite的热更新为什么比webpack快?
10.vite是怎么支持解析所有文件的为什么?
11.性能优化的方式,首屏加载优化
资源层面,优先压缩和拆分资源,如用 Vite/Webpack 拆分代码(Code Splitting),大文件分片加载;图片懒加载非首屏图片。通过 CDN 分发静态资源。代码层面,路由懒加载(如 React.lazy、Vue 异步组件)。缓存层面,设置 HTTP 缓存(强缓存 Cache-Control,协商缓存 ETag)
12.大文件进行分片加载是如何实现的?
首先前端获取文件总大小,按固定尺寸(如 1MB)计算分片数量;然后通过 HTTP Range 请求头,每次请求一个分片(如Range: bytes=0-1048575);服务端根据 Range 返回对应片段;前端接收所有分片后,用 Blob 或 ArrayBuffer 合并成完整文件。
13.强缓存的,就是说要用强缓存。那你如果强化了之后,那你怎么更新呢?就比如我发了个紧急的 V3版本,你是当前可能强化才能 V1,那我怎么更新到 V3?
给静态资源(JS/CSS/ 图片等)添加版本标识,如在文件名后加哈希值(app.8f3d2.js)或版本号(app.v3.js)。构建工具(Webpack/Vite)可自动生成哈希,哈希值随文件内容变化而变。
14.标识是在哪里做的?
构建工具(如 Webpack、Vite)会在打包时,根据文件内容生成唯一哈希值(如 MD5),并添加到文件名中(如index.abc123.js)这一步由构建工具的配置实现。
15.那如何要设置html的强缓存,如何做到强制更新?
16.RAG(检索增强生成)到底是什么东西,工作原理怎么样
17.为什么要做向量化的过程?
18.RAG减少的原因是什么,还有什么方式可以减少幻觉
19.就是你是如何去了解一个全新的一个技术领域的,就是你是怎么去做对应的一个学习的?有没有一些学习的方法论可以分享一下
20.分享一下Mi-BRAG
21.手撕:要实现支持并发限制和先进先出(FIFO)的异步任务调度器
22.追问:task返回什么类型
任务执行失败了上面功能能执行么,promise如何处理失败,但是不阻塞队列->finally()
catch的时候,能否将其重新加入队列重试
📍面试公司:字节跳动-今日头条
💻面试岗位:前端开发#牛客AI配图神器#
#发面经攒人品#
2.浏览器做了哪些工作解析HTML最终形成页面展示(渲染过程)
3.对js的解析是解析什么内容
4.就是假设我们已经解析完了,不管它是解析什么内容,那解析完之后的话,它其实会有一个事件循环的机制,介绍一下js的事件循环机制
5.事件循环在nodejs和浏览器的区别
6.vue3的vue2响应式的话有哪些区别
7.vue3实现一个自定义的响应式的数据应该怎么实现
8.对于引用类型和基础类型的ref 实现上有什么区别?
基础类型通过包装对象实现响应式,引用类型则借助 reactive 转换为代理对象,两者最终都通过 .value 访问,但内部处理机制不同。
9.vite的热更新为什么比webpack快?
10.vite是怎么支持解析所有文件的为什么?
11.性能优化的方式,首屏加载优化
资源层面,优先压缩和拆分资源,如用 Vite/Webpack 拆分代码(Code Splitting),大文件分片加载;图片懒加载非首屏图片。通过 CDN 分发静态资源。代码层面,路由懒加载(如 React.lazy、Vue 异步组件)。缓存层面,设置 HTTP 缓存(强缓存 Cache-Control,协商缓存 ETag)
12.大文件进行分片加载是如何实现的?
首先前端获取文件总大小,按固定尺寸(如 1MB)计算分片数量;然后通过 HTTP Range 请求头,每次请求一个分片(如Range: bytes=0-1048575);服务端根据 Range 返回对应片段;前端接收所有分片后,用 Blob 或 ArrayBuffer 合并成完整文件。
13.强缓存的,就是说要用强缓存。那你如果强化了之后,那你怎么更新呢?就比如我发了个紧急的 V3版本,你是当前可能强化才能 V1,那我怎么更新到 V3?
给静态资源(JS/CSS/ 图片等)添加版本标识,如在文件名后加哈希值(app.8f3d2.js)或版本号(app.v3.js)。构建工具(Webpack/Vite)可自动生成哈希,哈希值随文件内容变化而变。
14.标识是在哪里做的?
构建工具(如 Webpack、Vite)会在打包时,根据文件内容生成唯一哈希值(如 MD5),并添加到文件名中(如index.abc123.js)这一步由构建工具的配置实现。
15.那如何要设置html的强缓存,如何做到强制更新?
16.RAG(检索增强生成)到底是什么东西,工作原理怎么样
17.为什么要做向量化的过程?
18.RAG减少的原因是什么,还有什么方式可以减少幻觉
19.就是你是如何去了解一个全新的一个技术领域的,就是你是怎么去做对应的一个学习的?有没有一些学习的方法论可以分享一下
20.分享一下Mi-BRAG
21.手撕:要实现支持并发限制和先进先出(FIFO)的异步任务调度器
22.追问:task返回什么类型
任务执行失败了上面功能能执行么,promise如何处理失败,但是不阻塞队列->finally()
catch的时候,能否将其重新加入队列重试
📍面试公司:字节跳动-今日头条
💻面试岗位:前端开发#牛客AI配图神器#
#发面经攒人品#
全部评论
base南京OD,机会多多
大佬
同学,瞅瞅我司,医疗独角兽,校招刚开,名额有限,先到先得,我的主页最新动态,绿灯直达,免笔试~
过了吗
佬这是几面啊
相关推荐

点赞 评论 收藏
分享
点赞 评论 收藏
分享