字节前端一面-面经

上课,接到hr电话,说是字节跳动,高兴坏了(一开始以为是骗子,没想到真发邮箱了)…
1.简单自我介绍。
2.问了一些项目中比较难实现的前端元素(我答的是主题切换)。
3.vue组建的渲染原理。
4.虚拟dom的好处。
5.一个元素想要不响应点击时间如何做
这个问题问了很久,面试官人也很好,让我先答事件传播机制,一步一步引导我去回答
6.js中数组和set的区别。
7.队列和栈的区别,什么时候会用到栈。
8.进程,线程,携程的区别。
9. 项目里两个进程一个出现死循环,会影响另一个进程吗。
10.http和https的区别,以及与各个版本之间的区别。
11.js的箭头函数的this指向什么。
12.css隐藏元素的方式。
13.开发过程中,前端出现白屏的原因,以及如何解决,主要是结合项目去回答。
14.为什么会有跨域协议,脚本攻击跨域的例子。
16.redis的过期策略。
17.redis和mysql的区别。
18.异步和同步的区别,异步的使用场景。
19.接下来就是做题阶段实现字符串反转,实现一个二分查找
最后一道比较难,是一个给了一段js代码,写出执行结果,主要是异步同步红任务和微任务那些…
感觉良好,一个小时后就收到了二面的通知
全部评论
佬,哪个部门啊?
点赞 回复 分享
发布于 04-18 11:30 广东

相关推荐

回馈一下牛子,发一些小厂的面经~ 大厂面经随缘更新了,记录第一次找实习的日子。  欢聚网络一面寄(第一次面中大厂,被拷打烂了),小红书一面寄,字节二面寄(二面状态一坨狗是),美团一面寄,哈啰已offer~迈出了第一步了,ACM区域铜邀请银勇闯前端,希望可以越来越好吧。小厂1:(1) 自我介绍(2) (3) 拷打项目  (4) (5) 什么时候开始学习前端,学了多长时间。(6) 什么时候学习vue,学了多长时间。(7) vue2、vue3的区别。(8) computed 和 watch的区别,分别是干嘛的。(9) vue2、vue3分别是怎么实现watch侦听的,两者的区别。(10) vue3实现watch的proxy的缺点。(11) Es6常用的语法。(12) Promise是如何实现的。 (13) let 和 const 的区别(14) let、const作用域的底层原理。 (15) set 和 map的区别。(16)  如何改变this,后面提示了call, apply, bind,让我分别说说。(17) 在网页输入url,页面渲染出来的全部流程。(18)  浏览器渲染页面的流程。(19)  重绘和回流(重排) 的区别。(20)  项目遇到的困难,怎么解决的。反问:(1) 我:询问我的表现(2) 我:业务,技术框架小厂2:(1) 自我介绍(2) 项目拷打(3) websocket(4) 讲讲flex, 主要用到的属性。(5) let、var,const的区别。(6) 为什么选择前端。(7) 前端学了多久。(8) 前端是学校教的吗?还是自学。 (9)  vue学习了多长时间, 是怎么学习的。(10) v-if 和 v-show的区别。(11) v-if 和 v-show哪个性能较差。(12) 有没有在日常项目中使用过。(13)  vue子传父通信(14)  vue父传子通信(15)  vue2的option api 中为什么data要是一个函数,而不是直接是一个对象。 (16)  vue2和vue3侦听数据的区别。 小厂3:(1) 自我介绍。(2) 项目主要做了什么?(3) 项目主要用了什么技术。(4) 我在项目中主要做了什么?(5) 怎么使用的,聊天窗吗?(6) 有没有用过什么UI框架。(7) 在项目中做了哪些性能优化?可以好好总结一下。(8) 是怎么优化缓存的。详细过程,全方位拷打。(9) 如果缓存那里是写死的,能不能固定下来,不需要每次都发送网络请求。(10) 还用过什么ui框架。(11) 为什么会用到 markdown.js。(13) 知道几种选择器,详细说说。(14) Less和Sass用过哪一个。(15) 水平垂直居中的方式?有点忘记了。(16) 说说你的项目团队。(17) 用什么管理代码的?讲讲git常用命令。(18) 用什么进行代码编写,会不会用ai去协助书写代码?(19) js的数据类型有哪些?(20) 引用数据类型和值类型的区别?(21) window对象  和  document对象分别是什么。(22) 跨域是什么。(23) 怎么将字符串转换成数字?说出了一种手撸的原始人办法,脑子有点过载了。(24) v-for的key是用来干啥的。(25) vue如何实现双向绑定?(26) 有没有了解过uniapp (27) 小程序学过吗(28) 有没有了解过react,会不会react。(29) 继续拷打项目... (30) 怎么学习前端的。小厂全过,小厂杀手
郁闷的打工鸭:接好运
点赞 评论 收藏
分享
前端自动化测试是一种在前端开发过程中使用工具和脚本自动执行各种测试任务的方法,以验证代码的正确性、功能性和性能。通过自动化测试,可以有效地减少人工测试的工作量,提高代码质量,减少错误和缺陷,并加速开发迭代过程。以下是一些常用的前端测试工具:https://www.nowcoder.com/issue/tutorial?zhuanlanId=Mg58Em&uuid=07d53be4cd034a4ab270d500feebcc8dJest:Jest 是一个流行的 JavaScript 测试框架,特别适用于前端项目。它支持单元测试、集成测试和快照测试,具有简单的语法和强大的功能,可以运行在 Node.js 环境中。Mocha:Mocha 是另一个流行的 JavaScript 测试框架,它提供了灵活的测试结构和丰富的插件支持。Mocha 可以用于编写各种类型的测试,包括异步测试。Cypress:Cypress 是一个端到端的测试框架,专注于模拟用户操作与应用程序的交互。它提供实时预览、自动重载和断言,用于编写可靠的端到端测试。Puppeteer:Puppeteer 是一个 Node.js 库,用于控制无头 Chrome 浏览器。它可以用来进行各种 Web 页面操作,包括生成截图、爬取数据以及进行自动化测试。Enzyme:Enzyme 是一个用于 React 组件测试的工具,提供了轻松操作、断言和模拟渲染 React 组件的能力。WebDriverIO:WebDriverIO 是一个自动化测试框架,支持多种浏览器和平台,适用于编写功能测试和端到端测试。Karma:Karma 是一个测试运行器,它可以在多个浏览器中运行测试,用于确保代码在不同环境中的一致性。Linting 工具:虽然不是传统的测试工具,但 linting 工具如 ESLint 和 Stylelint 可以帮助检查代码风格和潜在错误,从而提高代码质量。这些工具可以根据项目需求进行选择,常常结合在一起使用,以确保前端应用在各个方面的质量和稳定性。
点赞 评论 收藏
分享
评论
10
31
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务