12.10 头条前端实习生一面总结
小姐姐我19年来第一次面试紧张激动ing
- restful api了解吗?
http://www.runoob.com/w3cnote/restful-architecture.html
- 说一下axios
axios.get('/user?ID=12345')
.then(function (response) {
console.log(response);
})
.catch(function (error) {
console.log(error);
});
axios.get('/user', {
params: {
ID: 12345
}
})
.then(function (response) {
console.log(response);
})
.catch(function (error) {
console.log(error);
});
3.http post与get区别
他是http请求方式的两种,
get是请求 post是提交
get(ie2-4k)数据量小,,post很大
get是在请求头里,放在地址栏不安全,post是在包体里,相对安全
get可以缓存,post不能
一般获取数据用get
一般表单提交用post
4.ajax状态码
301 永久重定向
302 临时重定向
404 资源找不到
500 服务器错误
304 缓存
200 服务器成功返回
5.tcp三次握手与四次挥手。。。emm更深层理解?没有更深层hhh
TCP三次握手:建立连接
(1)Client端向Server端发送一个SYN包,请求建立连接。
(2)Server端收到SYN包后,会发送一个SYN/ACK确认包回去,表示对第一个SYN包的确认。
(3)Client端收到SYN/ACK包后,会发送一个ACK确认包,通知Server连接已建立。
11.1\TCP建立连接为什么需要三次握手,两次不行吗?
答:在谢希仁著《计算机网络》第四版中讲“三次握手”的目的是“为了防止已失效的连接请求报文段突然又传送到了服务端,因而产生错误”。
TCP四次挥手:关闭连接
(1) Client端向Server端FIN报文,请求关闭连接
(2) Server端发送ACK,表示收到请求。但是Server端还有数据没有发送完成,则不必着急关闭Socket,可以继续发送数据。这时Client端进入FIN_WAIT状态,等待Server端的FIN报文。
(3)当Server端确定数据已发送完成,则向Client端发送FIN报文,表明可以关闭连接了
(4)Client端收到FIN报文后,知道可以关闭连接了,再发送ACK,后进入TIME_WAIT状态,Client端等待了2MSL(最大报文生存时间)后依然没有收到回复,则证明Server端已正常关闭,然后Client端也可以关闭连接了,进入Closed状态。
Server端收到ACK后,就关闭连接了。如果Server端没有收到ACK,那么将重发FIN。
6.vuex的mutation与actions
前者修改状态传参,后者异步修改状态
明显这个也不会
7.vue router的模板以及跳转的方式??
完全没理解想问什么,然后说了下源码,说了个router-link和router-view
8.history和hash的区别
然后我就回答history需要配置后端语言,hash不用;history较hash美观一些。
接着面试官问还有吗?逼不得已说了个更简单的hash(#),history没有。
哈哈哈哈我觉得一点都不深层次!
9.long[] 取max min 中间值,更快一些的方法
待补充。。。当时写的一个快排,,我感觉这个是此次成功的最重要的一部分
function quickSort(arr){
//如果数组<=1,则直接返回
if(arr.length<=1){return arr;}
var pivotIndex=Math.floor(arr.length/2);
//找基准,并把基准从原数组删除
var pivot=arr.splice(pivotIndex,1)[0];
//定义左右数组
var left=[];
var right=[];
//比基准小的放在left,比基准大的放在right
for(var i=0;i<arr.length;i++){
if(arr[i]<=pivot){
left.push(arr[i]);
}
else{
right.push(arr[i]);
}
}
//递归
return quickSort(left).concat([pivot],quickSort(right));
}
10.iframe不好之处
。。emmm这个吧见过,不过没太在意上去随便说了几条,具体见
1.iframe有不好之处:样式/脚本需要额外链入,会增加请求。
另外用js防盗链只防得了小偷,防不了大盗。
2.iframe好在能够把原先的网页全部原封不动显示下来,但是如果用在首页,是搜索引擎最讨厌的.那么你
的网站即使做的在好,也排不到好的名次!
如果是动态网页,用include还好点!
但是必须要去除他的<html><head><title><body>标签!
3.框架结构有时会让人感到迷惑,特别是在多个框架中都出现上下、左右滚动条的时候。这些滚动条除了
会挤占已经特别有限的页面空间外,还会分散访问者的留心力。访问者遇到这种站点往往会立刻转身离开
。他们会想,既然你的主页如此混乱,那么站点的其他部分也许更不值得阅读。
4.链接导航疑问。运用框架结构时,你必须保证正确配置所有的导航链接,如不然,会给访问者带来很大
1.iframe有不好之处:样式/脚本需要额外链入,会增加请求。
会产生很多页面,不容易管理。
总体来说,面试官想法是很难捉摸的,就是什么都看一点,多说一些总是对你有帮助的就这样。一面过了,很顺利,紧张的迎接我的二面,希望二面简单一些,并且顺利。好好准备,虚心求教!老老实实做一只前端小白菜。