滴滴 前端 面经

一面

1. 看代码说输出

   ```js
   function F() {}
   Object.prototype = function a() {
       console.log('a');
   }
   Function.prototype = function b() {
       console.log('b');
   }
   var f = new F();
   f.a();
   f.b();
   F.a();
   F.b();
   ```

2. 看代码说输出

   ```js
   var a = 123;
   function a() {}
   console.log(a);
   ```

3. new 的原理

4. 手撕:bind 实现

5. 手撕:判断回文串、去掉一个字符判断回文串

二面

1. 看代码说输出,有点忘了,题目有点长…

2. 手撕:正则

   ```html
   文本1文本2{{文本3}}文本4文本5{{文本6}}
   替换为:文本1文本2文本3文本4文本5文本6
   ```

3. 给定一个 html 文件,设计虚拟 dom 解析器(本来要我手写的,后来半天憋不出来说了大概思路就说那这题先过了)

4. 实习

5. 项目中的难点

6. 手撕:异步并发限制

三面

1. webpack 打包流程
2. webpack 优化
3. 手撕:第 k 大的数(快排的变体…脑子瓦特了当时没想起来,面试官原本出的异步并发限制,脑子抽了说上个面试官出过了然后给换的
应该不止这些,但是想不起来了

二面面试官超级好,一直让我不要紧张,说一面面试官给我的评价很高,心中暗喜,然后三面直接拉了坨大的
全部评论
佬啥时候面得呀
点赞 回复 分享
发布于 2024-11-13 20:13 陕西
这个一面第一个代码输出会输出什么啊
点赞 回复 分享
发布于 2024-12-11 21:42 湖北

相关推荐

程序员牛肉:你学历不错的。一年时间猛攻Java的话,技术就差不多了。只要自己不是太摆,进大厂跟玩一样。 在校生的技术差距其实不太大的,在你没有系统性的接触企业级开发应用之前,你所能接触的知识和场景是有上限的。一年的时间足够你达到那个上限了。在这一过程中打好基础,底子扎实一点。源码多看看就差不多了。 我之前在美团实习的时候,和我合租的舍友是双九。他就是苍穹外卖+导师让做的一个横向项目就进美团实习了。你这也问题不太大的
点赞 评论 收藏
分享
02-14 16:29
已编辑
Boston University 前端工程师
线下面试,需要自带简历,面试地点在编程猫公司会议室里1. 自我介绍2. 开发相关- 平常是怎么使用git,怎么创建新的分支- 上一家公司怎么进行code review的- 用过哪些AI工具来帮助自己开发提效3. CSS- CSS优先级, 哪个优先级是最高的- 用CSS实现居中对齐有哪些方式- 有没有用过display: grid, 它有什么限制- 在需要验证某个CSS特性或者JS特性的浏览器兼容性的时候,怎么去查- CSS中transition和animation的区别4. JavaScript- JS有哪些基础类型- JS中值类型和引用类型有什么不同- JS里的深拷贝一般怎么实现,有哪些现成的第三方库可以用- 讲一下事件循环- 事件循环中的微任务和宏任务平时有没有用到过,比如Vue中的this.$nextTick- 介绍一下JS中的原型和原型链- 如果想要创建一个原型为空的对象应该怎么做5. TypeScript- TS中的type和interface有什么区别- 项目中的.d.ts的作用?6. 框架- Vue3和Vue2的区别- Vue3和React的区别- React中,useEffect是如何使用的,依赖项传与不传的区别7. HTTP协议- 浏览器缓存是如何实现的- 平常开发中打包后的HTML文件以及JS, CSS文件的处理方式- localStorage, sessionStorage和IndexedDB的区别- 跨域是什么,如何从纯前端的角度实现跨域8. 项目经验- 说一下自己实现过的最难的项目- 开发过程中遇到页面卡顿的情况,应该怎么处理(提示:可以用devtools的Performance)- 怎么样实现一个可拖拽的元素9. 公司相关- 有没有用过编程猫的产品- 如果要你用AI对话框实现一个编程猫产品的积木模块的添加功能,你要怎么实现10. 反问环节#编程猫##前端##社招##面经##前端面试#
查看30道真题和解析
点赞 评论 收藏
分享
01-18 16:08
已编辑
门头沟学院 Java
12.27官网投递        1.10一面          1.13二面已经入职了  刚好有时间整理一下面经一面 30分钟:1 自我介绍2 如何理解测试开发岗位3 项目拷打4 项目中一个功能怎么测试的5 redis的zset数据结构的优点6 session与token区别7 线程池8 mysql索引9 多个字段都设置了一个索引,然后查询这些字段的顺序对查询结果有没有影响10 redis的持久化机制 11 IOC AOP12 自动化测试二面 45分钟:1 自我介绍2 项目拷打3 进程和线程的区别4 创建线程的方式5 redis缓存穿透6 线程的状态7  sleep和wait的区别8  Java序列化以及什么时候用9  动态代理10 了解哪些设计模式?11 mysql索引 为什么使用索引?12 慢sql13 常见状态码14 TCP UDP的区别 15 grep指令    杀死进程16 了解Docker吗?17 测开的理解18 自己项目有测试过吗19 印象最深的bug20 用过什么测试工具21 用户手机号+验证码登录这个功能 测试用例的设计22   发红包功能的测试用例设计两次面试都没有手撕,滴滴效率还是很快的,一面完10分钟立马约二面,二面完10分钟hr就打电话过了oc了
一笑而过2222:用户手机号+验证码登录功能测试用例 功能测试: - 正确手机号和验证码,登录成功跳转。 - 正确手机号、错误验证码,提示错误。 - 未注册手机号+任意验证码,提示未注册。 - 手机号格式错(非11位),输入时提示格式错,禁发验证码。 - 验证码超时,提示过期重获。 - 频繁获验证码,超次数提示操作频繁。 - 验证码输错超次数,提示过多重获。 - 测试验证码自动填充,成功填充且登录成功。 安全性测试: - 验证码加密传输,不能明文。 - 服务端加密存储,过期自动删。 - 防接口刷,频繁调用触发风控。 性能测试: - 验证码3秒内送达。 - 1000用户并发登录,响应≤2秒,成功率≥99.9%。 兼容性测试: - 不同运营商手机号都能收发验证码登录。 - 不同设备(iOS、Android、Web)登录正常,界面适配好。 - 不同浏览器(Chrome、Safari)Web端登录正常。 发红包功能测试用例 功能测试: - 正常发普通红包,金额平均分配。 - 正常发拼手气红包,金额随机总和对。 - 金额超单笔上限,提示超限。 - 数量超单次上限,提示超限。 - 余额不足,提示充值。 - 红包过期未领完,金额退回。 - 重复领红包,提示已领。 - 小额红包可正常发送领取。 安全性测试: - 防前端篡改金额,后端校验,非法请求报错。 - 防红包刷,触发风控限制。 - 控制领取权限,非指定人不能领。 性能测试: - 1000用户并发发红包,响应≤1秒,无丢包错账。 - 1万用户抢1红包,仅1人成功,其余提示领完。 兼容性测试: - 不同设备(iOS、Android、PC)收发退红包正常。 - 不同网络(Wi-Fi、4G)弱网下无卡顿丢数据。 边界测试: - 最小、最大金额红包可正常收发。 - 红包数量为1可正常发送,领完提示。 用户体验测试: - 发送成功,发送者有提示。 - 领取者有提醒,发送者可见记录。 关键补充 登录功能:防验证码爆破,支持国际化手机号,考虑禁止验证码输入框粘贴。 发红包功能:关注金额分配公平,高并发数据一致,退款到原支付账户 。
点赞 评论 收藏
分享
评论
4
20
分享

创作者周榜

更多
牛客网
牛客企业服务