面试复盘总结

面试复盘

前言:刚经历过大二下的学期末面试,将提问的问题进行了总结,方便后续查看复习。

一,项目

  1. 弱网条件下,你是怎么判断弱网的?

  2. 60fps是怎么监测的?

  3. 你项目中用了状态锁,它是悲观锁还是乐观锁?

  4. 自己的算法里做了什么优化,有什么区别,借鉴的时候借鉴了什么?

  5. 大文件分片上传用什么协议,http还是WebSocket,两者哪个更好?

  6. arraybuffer和blob的区别,真正计算的时候用的是哪一个?

  7. worker有哪几种worker?

  8. 一般传输的数据会有多大,计算md5的时候怎么快点(可以去开头,中间,结尾等块)?

  9. 性能优化方面,什么指标,用的什么方法,如果是lighthouse看哪些指标?

  10. 除了适配器模式,你还了解其他模式吗?

  11. 讲讲你这设计的两个钩子是干啥的,在什么时候用到?

二,AI

  1. 讲讲mcp,rag(查找方式),skill(常见的skill有哪些),怎么写出一个比较好的skill?

  2. function call是什么吗?

  3. plan模式的另一种说法?

  4. 了解过harness吗,大概讲一讲?

  5. codereview的时候怎么用ai,以及你自己会关注哪些点?

  6. 平时用ai用的多吗?怎么用的?怎么让token的消耗更少?

三,vue源码

  1. 讲讲热更新?

  2. vue渲染原理 前后对比(code watcher 和 Observe函数)?

  3. 讲讲diff算法,其中提到了最长子序列算法,虚拟dom一定比真实的dom要好吗?

  4. 单页面了解吗,seo不友好,怎么让他友好,可以用ssr,以及其他的,vue算什么csr?

  5. vue的template到render的过程?

四,网络

  1. url输入之后发生了什么

  2. DNS解析,其中的涉及到哪两个算法,(迭代和什么来着)

  3. 浏览器缓存有哪几种?

  4. 说说常见的对应的请求报文和响应报文

  5. 非对称密钥和对称密钥的区别

  6. http1.1到2.0的区别

  7. tcp和udp的区别,讲讲tcp的三次握手

  8. 讲讲TLS

  9. 讲讲强缓存和协商缓存

五,工程化

  1. webpack和vite的区别,为什么选用webpack,plugin和loader的区别,常用的loader说一下?style-loader最后会将文件转换为什么?(js)

  2. 项目是怎么优化的?大概讲一下?

  3. Tree Shaking是什么,什么情况下会失效?(cjs)

  4. ts中的工具类型,以及泛型,any和unknown的区别

六, 常见八股

  1. commonjs和esm的区别?(其中有涉及到Tree shaking)

  2. js为什么是单线程的?

  3. 浏览器的渲染原理,为什么是GPU来渲染图层,GPU和CPU的区别是什么?

  4. npm yarn pnpm的区别,(从左到右的更新都是在不断解决已有问题,幽灵机制,软链接,硬链接)

  5. 常见的网络攻击类型,csrf说一下是什么

  6. script中的defer和async的区别?它们是在DomcontentLoaded前执行还是之后执行

  7. domcontentload和load的区别

七,面试心得于总结

1.多多面试 :锻炼在被审视的情况下回答更有逻辑化点。

2.引导面试官 :不要假设面试官了解你的项目,大部分面试官几乎都不太了解你的项目,甚至就算了解可能具体的技术点他也没有涉及到过。他会根据你的描述来去发问,抓住一个点进行深挖,无论这个东西涉及到什么(算法,计算操作系统,计算机组成原理)。所以你讲述的时候就要有引导性,引导他们往你会的熟悉的方向思考发问

3.自我介绍 :介绍的时候项目不用过于详细,如果面试官想了解的话他会抓住他感兴的点继续进行问的。

4.项目 :你要对你的项目1000%的了解,每个问题就像是一个网,以此点为基础然后向不同的方向拓展延伸。就比如项目中用了大文件分片上传,上传涉及到什么线程(你项目里有哪几个线程);网络传输(用什么协议,http?websoket?两个哪个更好?);你上传的文件有多大(如果上传超大文件,你难道要用户一直等着吗?有没有做相关的技术处理)。

5.八股 :准备八股题目时也不能只单纯的背答案,题目涉及到的某个点面试官也会去拓展延伸,背诵的时候也要针对一个点往深处研究。

6.深度构建知识网:当前的学习需要建立连接,每个不同领域下的知识点的关联,要让这些不同垂直领中的知识在你脑海中形成一张网。

相关推荐
洛卡卡了2 小时前
我们在用 AI 写代码时,为什么建议要好好维护 AGENTS.md 呢?
面试·agent·claude
PBitW2 小时前
GPT训练我的第三天,明白了应该咋说满分回答!😕😕😕
前端·javascript·面试
自由路飞8 小时前
RAG 混合检索深挖:BM25 和向量分数为什么不能直接相加?
面试
未秃头的程序猿8 小时前
告别"if-else地狱"!Java 21模式匹配,代码优雅了10倍
java·后端·面试
阳光是sunny20 小时前
Vue 项目怎么做用户行为全链路监控?轻量插件方案详解
前端·面试·架构
蝎子莱莱爱打怪20 小时前
DSpark 讲透:DeepSeek 不换模型,硬把 V4 提速 85%,是怎么做到的?
人工智能·面试·程序员
程序员七平1 天前
面试官:你说你Vibe Coding手拿把掐,那 Claude Code 用户级、项目级、本地级配置怎么隔离?
面试
葫芦和十三1 天前
图解 MongoDB 17|大集合与工作集:数据超过内存怎么办
后端·mongodb·面试
葫芦和十三2 天前
图解 MongoDB 18|复制集拓扑:Primary、Secondary 和 Arbiter 的分工
后端·mongodb·面试
葫芦和十三2 天前
图解 MongoDB 15|journal 与持久化:写入怎么不丢,崩溃怎么恢复
后端·mongodb·面试