3.11-阿里控股前端暑期实习一面

25实习面试初体验,面前紧张的不行,但是面试官人巨好,体验贼棒,不会的地方耐心解答,算法也会指导。
55分钟。复盘一下:
1.项目的地图功能介绍一下
2.JS中的this如何工作(答了四种绑定方式)
3.const let var
4.js如何实现深拷贝 浅拷贝
5.深拷贝要注意哪些情况?
6.排除了一切特殊情况,最简单的深拷贝?
    回答的是递归,面试官说应该是JSON.parse(JSON.stringify(xxx)) 。我说没办法考虑undefined和symbol,面试官说实际不会有那么多symbol。确实是的,记住了
7.箭头函数和普通函数的区别
8.CSS盒模型介绍一下
9.flex布局介绍一下,还有常用属性,以及作用
10.CSS的选择器以及优先级
11.样式嵌套的时候选择器优先级怎么计算?(这个真忘了)
12.HTTP状态码 404 301 302 500,哪些场景会用到
13.301和302浏览器接受到这两个状态码行为上会有什么差异?(不会)
    301,代表 永久重定向,也就是说第一次请求后,下次浏览器再去请求的话,不会向服务器请求了,而是直接从浏览器的缓存里拿 
    302,代表 临时重定向,也就是说每次去请求都会请求服务器(除非响应中用 Cache-Control 或 Expired 暗示浏览器缓存)
14.介绍一下http协议,有哪些特性
15.http请求结束默认会关闭连接,如何保持连接?(keep-alive)
16.http的无状态体现在哪里?(答不全)
    无状态是指,同一个会话的连续两次请求之间相互不了解。也就是说,第二次请求发送的时候,服务器会响应,但是不会记住你是谁。所以如果需要使用之前的信息,每次都要将完整的数据和上下文发送。
17.v-if和v-show区别
18.Vue组件间通信方式
19.讲一下同源策略和解决跨域问题的方式
20.postMessage如何实现跨域?(不会)
    a域向b域发消息,会在a域的页面下埋一个b域的页面