当前位置: 首页 > Web前端 > HTML

美团一边冷,怒刷3000面试题逆袭字节,泪流满面分享面经

时间:2023-04-02 17:07:32 HTML

前言我是大二出身,第一次面试美团就冷了。先分享一下美团的爽经,希望大家做好避坑的准备:一方面:1.http和https的区别,非对称加密和对称加密的原理,http2和http1的区别(多路复用),数据通过字节流传输)2.tcp和udp的区别,TCP是如何实现可靠的数据传输的(滑动窗口和拥塞控制)3.解释tcp的三次握手和三次挥手,为什么我们有todothis5.循环对象的方法有哪些及其区别(Object.keys(),forof,forin)4.如何实现对象的深拷贝,考虑对象嵌套的问题5.方法有哪些用于检测数据类型(typeOf,instanceof,constructor,Object.prototype.toString.apply())6.解释防抖和节流,以及实现它们的代码7.你了解CSS动画吗?说说transition和animation的区别以及transition的触发条件8.html文件中的script标签介绍了标签的defer属性和async属性及其区别和head标签中的介绍9.给大家一个array按照时间排序每秒输出一个元素及其下标10.你知道css3的cut属性吗?11、html页面为什么会出现浮动,如何清除(一开始应该理解为float浮动,后来称为BFC)12、如何实现垂直居中(尝试了解垂直居中的方法)13、解释一下nodejs中的IO控制(说明你只熟悉http模块和fs模块)14.说说expres和koa的区别因为这次面试之前没有做任何准备,所以联系老大通知我面试去了,果不其然,天冷了。。。有了这个教训,我开始刷面试题,准备了一个多月,没日没夜的刷题,亏了很多的头发,我觉得我几乎已经准备好投票给字节跳动了。以下是字节跳动的面授体验:一方面:1.先自我介绍,然后简单说说项目。2、对于http服务,接收端如何判断数据已经接收到?3、浏览器输入www.baidu.com的过程?4、分别谈谈对ARP、ICMP、TCP协议的理解?5、路由器属于哪一层?IP数据包经过路由器后发生了什么?6.介绍一下select和epoll的区别?7.引入泛洪?8.介绍C++中的三种智能指针。这三种类型之间有什么区别?9、c语言中static的用法是什么?10、tcp连接和断开的详细过程?每个过程的标志是什么?11、如何调试程序?断点的原理是什么?手撕代码:1.链表对折,需要O(1)空间,例如:将1->2->3->4...->n-1->n->null折叠成1->n->2->n-1->3->n-2....->null问题:你想问什么?面试心得:一共40多分钟,一面以基础知识为主,网上考察较多。两个方面:1.直接介绍实验室的项目(研究生是电机控制)。2、写一个电机控制相关算法的函数,然后详细说明,为什么要用这个?还有其他算法吗?3、结构体的成员调用struct1->num的底层实现?宏是否定义了MAX(a,b)的实现?4、http请求的具体方法有哪些?说说http的消息结构?5、http头有多少字段?什么是流水线?如何保证服务器按顺序返回?6、tcp有什么特点?详细说说tcp的一些机制?为什么需要这些机制?详细说一下tcp报文的第一部分?手撕代码:1.知道结构体类型和指向某个成员的指针,找到结构体的起始地址,例如:structA{inta;整数b;...;整数c;...};指向结构变量a中成员c的指针是int*p。求一个地址?2.逆时针打印矩阵,例如:123456=>147896325789问题:你想问什么?面试经历:一个小时左右,因为晚上刚下班回来面试,状态不好。第二个面试官喜欢考察对问题本质的理解,喜欢问为什么会这样。采访结束后,他长长地吸了一口气。三个方面:1、自我介绍?介绍一下实习的情况?实习项目?技术学到了吗?你平时是怎么学习的?2.实验室项目?手撕代码:1、已知f()函数输出1的概率为p,输出0的概率为1-P。然后实现g():intg(){}等概率输出1和0并进一步通过新实现的g()实现等概率输出0-n的功能inth(intn):整数h(整数n){}2。实现linux命令tail-ffilename的功能?(需要检查参数和文件类型是否合格)intmain(intargc,char*argv[]){}问:你想问什么?面试心得:一共花了一个小时。之前在某篇文章看到过第一道算法题,但是没看到是怎么实现的(面试的时候心情复杂)。面试官提示后还是写了。领悟不到尾巴,心情很复杂。经常看面经,心想自己应该不会遇到这种问题就庆幸了。..三面面试完,几天后接到通知,说原来的三面面试官有事,让另外一个面试官来面试我。现在真正的三面面试官要重新面试。当时觉得好累!可既然三方都不好,这又何尝不是一个机会!后三个方面:1.都和tcp、http、select、epoll有关。2、简历上的项目+实习的学习情况?手撕代码:1.二叉树的正确视角,例如:8515=>8,15,6,7367问题:以后应该没有面试了,想知道什么吗?面试心得:20多分钟,这边感觉很好,应该是稳定的。..这些是我能记住的一些问题。周五面试结束,第二周周三收到意向书。为了准备这次面试,刷了很多面试题,做了一个梳理,分为HTML、css、JavaScript、React、Vue、浏览器、服务器和网络、算法等.....HTML浏览器页面有哪三层,分别是什么,作用是什么?HTML5的优点和缺点是什么?Doctype的作用?如何区分严格模式和混合模式?他们的意思是什么?HTML5中有哪些新内容,删除了哪些元素?您在哪些浏览器上测试过您的网页,这些浏览器的核心是什么?每个HTML文件的开头都有一个很重要的东西,Doctype,你知道这是干什么用的吗?说说你对HTML5的理解?(what,why)对WEB标准和W3C的理解和理解?HTML的全局属性是什么?说说超链接目标属性的值和作用?iframe有什么缺点?Label的作用是什么,如何使用?如何实现浏览器中多个标签页之间的通信?说说你对canvas的理解?...CSS解释一下CSS盒子模型?请告诉我CSS选择器有哪些类型,并举几个例子来说明它们的用法?请告诉我CSS有什么特别之处?(优先级,计算特殊值)常见的浏览器兼容性问题及解决方法?列出显示值并解释它们的作用?如何居中一个div,如何居中一个浮动元素?请列出几种(至少两种)清除浮动元素的方法?块、内联和inlinke-block细节的比较?什么是优雅降级和渐进增强?谈谈浮动元素带来的问题和你的解决方案。你有哪些性能优化方法?为什么要初始化CSS样式?按照网页的位置,CSS样式表可以分为哪几种样式表?你能告诉我em和rem之间的区别吗?......JavaScriptjs的各种位置,比如clientHeight、scrollHeight、offsetHeight,以及scrollTop、offsetTop、clientTop的区别?js拖拽功能的实现js的异步加载js的防抖节流方法谈谈闭包谈谈你对scopechainJavaScript原型、原型链的理解?有什么特点?请解释一下什么是事件委托/eventdelegationJavascript如何实现继承?函数执行改变了thisbabel的编译原理函数currying说说类的创建和继承说说前端的事件流如何让事件先冒泡再捕获说说图片的懒加载和预加载jsnew操作符是干什么的?在函数内部更改this指针的指向功能(bind、apply、call的区别)Ajax解决浏览器缓存问题...限于篇幅,只能分享部分面试题。完整版面试题及答案可【点我】阅读下载~免费与大家分享键值在VueVue中的作用为什么Vue组件中的数据一定要是函数?vuex的State特性是什么?介绍一下Vue的响应式系统computed和watch的区别。介绍一下Vue的生命周期。为什么组件的数据必须是一个函数?组件如何通信?如何在Vue.cli中使用自定义组件?你遇到过什么问题吗?Vue是如何实现按需加载和webpack设置的?简述每个周期适用于哪些场景。什么是scs?Vue.cli的安装步骤是什么?有哪些主要特点?谈谈你对Vue.js模板编译的理解?Vue路由跳转的几种方式Vue是如何实现按需加载和webpack设置的?Vue的路由实现:hash模式和history模式Vue、Angular、React有什么区别?Vue路由的钩子函数Vue的计算属性是什么?......React介绍reactReact单数据流react生命周期函数和react组件生命周期reactJs组件通信的原理、区别、亮点、作用你了解过react的虚拟DOM吗?VirtualDOM是如何比较的?项目中用到了react,为什么选择react,react有什么好处?如何获得真正的dom?选择React的原因?React的jsx,函数式编程react的组件判断刷新什么不刷新React-Router路由的动态加载模块如何配置什么是Redux中间件,接受几个参数Redux请求中间件如何处理并发浏览器跨标签页面通信BrowserArchitecture浏览器下的事件循环(EventLoop)从输入url到显示过程重绘和回流存储WebWorkerV8垃圾回收机制内存泄漏回流(reflow)和重绘(repaint)优化如何减少重绘和回流?一个页面从输入完成页面加载和显示的URL。在这个过程中会发生什么?localStorage与sessionStorage和cookie的区别总结http多路复用cookie可以设置哪些属性?向前代理和反向代理……服务器端和网络HTTPS和HTTP之间的区别HTTP版本从输入URL到页面呈现发生了什么?HTTPCache缓存位置强缓存协商缓存资源用户行为影响浏览器缓存缓存的优势不同的刷新请求执行过程为什么会存在跨域问题)withCredentials属性服务器中CORSURL类中常用方法的设置算法和数据结构二叉树层序遍历B-tree的特点,B-tree和B+树的区别尾递归大数阶乘怎么写?递归方法会出什么问题?多维数组转一维数组的方法说说冒泡快排的原理堆排序方法的原理?复杂性?几种常见的排序算法,手写数组去重,方法尽量多写如果有一个大数组,全是整数,如何求最大的前10个数由于篇幅有限,只能分享面试的一部分问题,完整版面试题及答案可以【点我】阅读下载~免费分享给大家