听说你想去大厂看学妹,带你看看小米前端实习岗面试长啥样?
前言
金三银四跳槽季,你准备好了吗?希望各位小伙伴能够苦练技术,早日达成自己心仪的offer。
下面是博主收集的一些关于面试的比较帮的面试题目,有需要的小伙伴可自行订阅下载。
Spring系列面试题129道(附答案解析)
Redis,快看看这40道面试题
MyBatis的27道面试题
73道Java面试题合集-多线程与进程
28道ZooKeeper面试题
【一面】(问题顺序不一致,只写了能想到的)
1. HTTP3、2、1.X
2. 跨域
3. HTTP请求行有哪些字段(user-agent之类的
4. HTTP状态码
当浏览者访问一个网页时,浏览者的浏览器会向网页所在服务器发出请求。当浏览器接收并显示网页前,此网页所在的服务器会返回一个包含HTTP状态码的信息头(server header)用以响应浏览器的请求。
HTTP状态码的英文为HTTP Status Code。
下面是常见的HTTP状态码:
- 200 - 请求成功
- 301 - 资源(网页等)被永久转移到其它URL
- 404 - 请求的资源(网页等)不存在
- 500 - 内部服务器错误
5. 三次握手
第一次握手:建立连接时,客户端发送syn包(syn=j)到服务器,并进入SYN_SENT状态,等待服务器确认;SYN:同步序列编号(Synchronize Sequence Numbers)。
第二次握手:服务器收到syn包,必须确认客户的SYN(ack=j+1),同时自己也发送一个SYN包(syn=k),即SYN+ACK包,此时服务器进入SYN_RECV状态;
第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=k+1),此包发送完毕,客户端和服务器进入ESTABLISHED(TCP连接成功)状态,完成三次握手。
6. HTTP和HTTPS
HTTP协议传输的数据都是未加密的,也就是明文的,因此使用HTTP协议传输隐私信息非常不安全,为了保证这些隐私数据能加密传输,于是网景公司设计了SSL(Secure Sockets Layer)协议用于对HTTP协议传输的数据进行加密,从而就诞生了HTTPS。简单来说,HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,要比http协议安全。
HTTPS和HTTP的区别主要如下:
(1)、https协议需要到ca申请证书,一般免费证书较少,因而需要一定费用。
(2)、http是超文本传输协议,信息是明文传输,https则是具有安全性的ssl加密传输协议。
(3)、http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。
(4)、http的连接很简单,是无状态的;HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,比http协议安全。
7. 原型链,终点为什么是null
8. 继承,讲了ES6继承(extends)和原型链继承。还会别的吗?
9. EventLoop
10. flex用过哪些?flex自己呢?我讲了flex: 1的内容
11. 强缓存和协商缓存。3系列除了304还知道哪个?不知道了..
到底什么是强缓存?强在哪?其实强是强制的意思。当浏览器去请求某个文件的时候,服务端就在respone header里面对该文件做了缓存配置。缓存的时间、缓存类型都由服务端控制,具体表现为:
respone header 的cache-control,常见的设置是max-age public private no-cache no-store等
上面说到的强缓存就是给资源设置个过期时间,客户端每次请求资源时都会看是否过期;只有在过期才会去询问服务器。所以,强缓存就是为了给客户端自给自足用的。而当某天,客户端请求该资源时发现其过期了,这是就会去请求服务器了,而这时候去请求服务器的这过程就可以设置协商缓存。这时候,协商缓存就是需要客户端和服务器两端进行交互的。
12. 代码题就不写了,不是算法,不难
【二面】
1. 兄弟组件传值
可以用过一个vue实例Bus作为媒介,要相互通信的兄弟组件之中,都引入Bus,之后通过分别调用Bus事件触发emit和监听来实现组件之间的通信和参数传递,类似window的全局自定义事件。类似与子传父,只不过是利用一个新的vue示例作为媒介,而不是当前vue示例(this)
2. VUE自定义指令
3. 怎么学习前端的
4. VUEX的mutation和action的区别
5. less/sass有了解吗
6. 找出数组出现次数最多的那个(有 1 和 '1' 要区分)
7. 项目内容
8. v-if和v-show
- 1.手段:v-if是通过控制dom节点的存在与否来控制元素的显隐;v-show是通过设置DOM元素的display样式,block为显示,none为隐藏;
- 2.编译过程:v-if切换有一个局部编译/卸载的过程,切换过程中合适地销毁和重建内部的事件监听和子组件;v-show只是简单的基于css切换;
- 3.编译条件:v-if是惰性的,如果初始条件为假,则什么也不做;只有在条件第一次变为真时才开始局部编译(编译被缓存?编译被缓存后,然后再切换的时候进行局部卸载); v-show是在任何条件下(首次条件是否为真)都被编译,然后被缓存,而且DOM元素保留;
- 4.性能消耗:v-if有更高的切换消耗;v-show有更高的初始渲染消耗;
9. ElementUI怎么校验数据
10. ElementUI组件大小不符合需要的大小怎么办
写在最后
关注我,带给你更多的大厂面试经验,喜欢的小伙伴一键三连哟!
文章来源: wenyusuran.blog.csdn.net,作者:文宇肃然,版权归原作者所有,如需转载,请联系作者。
原文链接:wenyusuran.blog.csdn.net/article/details/115614798
- 点赞
- 收藏
- 关注作者
评论(0)