腾讯云智大数据前端 一面面经

★日期:5.10   时长:50分钟

一、自我介绍

二、八股盛宴
1. Vue中watch的底层原理?
2. Vue3响应式与Vue2响应式有什么区别?(Proxy对比defineProperty)
3. 双向绑定的实现原理?
4. MVVM模式和MVC模式?
5. 讲讲js中的闭包,闭包的常见用途是?
6. 讲讲js中的原型链
7. Promise都有哪些状态?
8. 讲一讲如何用Promise,实现三个任务并发,有一个返回就终止其他两个任务
9. Promise有哪些方法?
10. 又回到问题8,试图引导我,但我仍然想不出来(悲)
11. async和await是做什么的?
12. 讲讲事件冒泡和事件捕捉,如何阻止冒泡?
13. 讲讲箭头函数的,它的this指向是?除了this之外的特殊之处?
14. 讲讲call和apply方法
15. css的绝对定位和相对定位。如果子元素和父元素都是相对定位,那子元素的位置相对于谁?
16. css如何实现盒子垂直水平居中?
17. tcp和udp的区别?
18. 讲讲https里的s是指什么,它的加密流程?
19. 讲讲数字证书
20. 了不了解各种设计模式
21. 你了解哪些数据结构?(链表,树,图等)
22. 讲讲你对链表的理解,它和数组的区别?
23. 什么是二叉树?讲讲树的深度优先遍历和广度优先遍历。
24. 看你用过nodejs?(回答只是用过express)
25. nodejs如何根据路径读取指定文件?
26. nginx用指令怎么启动?
27. 讲讲nginx反向代理
28. 我想用nginx把请求转发到5332端口的服务器,怎么做?
29. vite的打包过程,它怎么就把原本的各种文件转化成浏览器能运行的代码?
30.(引导我想到babel)那babel是怎么转化不同版本的语法的?
31. 讲讲网络安全相关(XSS、CSRF原理与防范)

三、手撕环节
写一个防抖函数。又问:被防抖的函数如果有参数需要传递怎么办?

四、反问环节
1. 我:面试评价和发展建议(又被问了有没有用过react,有没有建github仓库,怎么学习前端技术的)
2. 我:您部门负责的业务

由于八股居多,且问到的内容我还算熟悉,所以顺利通过,几小时后显示进入复试,当晚约了5.11二面。
全部评论
第八题能用Promise.race()实现吗
点赞 回复 分享
发布于 2024-06-04 11:08 广东

相关推荐

在面试和工作中,有效地表达自己的硬实力(即专业技能和知识)是至关重要的。这不仅能帮助你展示自己的能力,还能让面试官或同事更好地理解你的价值。下面是一些具体的方法和技巧,帮助你将硬实力更好地传达:https://www.nowcoder.com/issue/tutorial?zhuanlanId=j572L2&uuid=d3520e4b0ad640008bc5305fd6838a1c1. 理清自己的硬实力首先,你需要理清自己的硬实力,明确你掌握的技能和知识,包括:编程语言:如 JavaScript、HTML、CSS、Python 等。框架与库:如 React、Vue、Angular、Node.js、Bootstrap 等。工具与技术:如 Git、Webpack、Docker、Jest 等。项目经验:具体参与的项目及角色。相关证书:如相关的专业认证、课程证书等。2. 使用量化数据通过量化来表达你的成果会让你的能力显得更加具体和有说服力。具体数字:如“通过技术优化,将页面加载时间减少了30%”或“在项目中提高了代码复用率,减少了50%的开发时间”。项目规模:描述参与项目的规模、影响用户数量等,例如“参与了一个月活跃用户超过10万的电商平台开发”。3. 采用 STAR 方法在回答相关问题时,采用 STAR 方法(Situation, Task, Action, Result)能够有效组织你的表达:Situation(情境):描述面临的具体情境。Task(任务):你在这个情境中需要完成的任务。Action(行动):你采取的具体行动和使用的技术。Result(结果):最后的结果和影响,可以用量化的结果来描述。https://www.nowcoder.com/issue/tutorial?zhuanlanId=j572L2&uuid=d3520e4b0ad640008bc5305fd6838a1c
点赞 评论 收藏
分享
Timeline:一面        2025-02-14  14: 00    当天 15: 30 通过二面        2025-02-17  11: 15    当天 15: 10 通过三面        2025-02-18  14: 00    当天 14: 50 通过hr面        2025-02-18  17: 00    当天通过oc            2025-02-19  10: 45呃啊啊啊啊啊啊啊,对比一面难度飙升二面主要过程:1. 自我介绍2. 首屏优化有哪些方法(tree-shaking  http2  懒加载  gzip  SSG ......),    看的是哪个指标(LCP),LCP具体是怎么计算的(完全没了解)3. 业务组件和基础组件的区别(??根本不知道),如何保证组件的稳定性(希腊奶,应该是指组件测试)4. 拷打 css: - 重绘重排(浏览器渲染原理,结合 visibility: hidden 和 display: none) - flex 垂直布局如何使得三个子盒子间隔 10px(不是 margin / space-between,叫我去了解一下,应该是 row-gap) - position: sticky(没用过),position 和包含块5. 拷打 vue: - vue2 和 vue3 有什么区别(setup,defineProperty 和 proxy) - vnode 和实际 dom 有什么区别,为什么要用 vnode(为了高效 diff 和跨平台支持包括 ssr),为什么不直接修改 dom(因为早期对 signal 理念实现不够彻底,vue3.6 的 vapor mode 正在改进,我的回答不一定对哈) - computed 的更新机制是怎么样的(脏值检测懒更新),使用时和 watch 有什么区别(问的就是依赖多的时候用 watch 指定需要的依赖)6. 拷打 js: - var let const window 以及多 script 标签(一定要注意 let 和 const 的变量不会挂载到 window 哇),var 的变量提升机制(先定义后赋值),变量未声明默认为 var - 手写 Promise.all(应该直接 return 一个 new Promise,我用了 Promise.withResolvers;还有打印的时候用 then,习惯了用 setTimeout 打印了,被狠狠地批评了) - 说说 async 和 await 的实现(是说源码),如果没有 async 的时候使用 await 会不会报错(旧版 node 的 commonjs 会,要用立即调用函数的方式使用,新的和 esmodule 默认支持) - Promise A+规范怎么定义一个 Promise(我只知道要 then 方法,叫我回去看)7. 算法题:二叉树中的最大路径和,返回其路径(力扣 124 改编,无负数,卡了很久都没完全写对,路径递归返回写错了极力狡辩)8. 反问: - 主要技术栈(vue3,node) - 工作时间(11点前上班,12点到2点休息,6点到7点晚饭,8 9点下班,包三餐) - 最近有碰到什么技术难点吗(听不懂我也忘了)
投递字节跳动等公司10个岗位
点赞 评论 收藏
分享
评论
3
16
分享

创作者周榜

更多
牛客网
牛客企业服务