双非暑期前端腾讯pcg一面
来腾讯面试,一次问得更比两次多
- 自我介绍、优势
- 平常怎么接触 AI 编程(说了一下我在项目中的单人异步工作流,以及对 AI 参与到该工作流的思考,由于和 LLM 交流的产出要说起来太长被打断了)
- 手撕:O(log N) 乘法运算符(完全没思路,在一步步引导之下做了一个把乘法拆解成位运算和加法的逻辑)终于是撕出来了
- AI 手撕:初始化一个项目,做一个 iPod 转盘组件,转动一定角度就切换菜单高亮项(跑通以后问 AI 怎么实现的,然后我跑了一个 /doc 加注释,那 AI 都有注释了还问你干啥了)
- 怎么计算转盘转了多少角度(两个坐标求向量夹角、余弦定理);被引导之下说了极坐标(不是还问高中数学?)
- 了解哪些 CSS 布局方式(标准、浮动、定位、flex、grid)
- 说一下盒子模型(四个部分、box-sizing 属性)
- flex 有了解吗(三个属性)
- 闭包
- 让你手写编程语言,你会如何实现闭包(说了一下 C++ 的捕获列表)
- C 怎么处理函数栈(调用函数入栈+函数调用结束弹栈)(气氛逐渐诡异)
- 学校学过汇编语言吗(没,教过 riscv)
- 纯手写 HTTP 服务器怎么写(要求从 TCP 握手开始讲,降到一次请求-响应的链路,还说了请求/响应包体结构)
- 说一下 HTTPS 怎么实现的
- HTTPS 用到了对称加密还是非对称加密(都用了,非对称加密加密的是对称密钥)
- TypeScript 怎么实现枚举的(说了一下枚举值)
- 枚举类本质上是什么(不知道,我说我猜是对象,说猜对了)
- 怎么查枚举类有没有提供一个值(我说应该有原型方法,他说你可以查一下)
- 说一下实习公司干什么的(LLM 生成网页,然后说了本人工作)
- 介绍项目:公式编辑器
- 具体介绍测量和布局做了什么工作
- 一些字母的基线的特性
- 简单介绍日志记录器
- 反问(主要工作、实习生任务、对优秀人才的期望(聊起来愉快)、出结果时间)