总的来说,面试也是对自己能力的一个检验吧,今天一共有3场面试,强度还是比较大。虽然面试之前比较紧张> <
下面是一些面试中提到的问题总结:
美团 65min
美团的面试有一些手写代码的环节,所以需要掌握代码的实现才不会拉跨。问到的一些问题有:
响应式概述
eventloop
css的布局有哪些
css的浮动取值和position取值等布局方式
提到了微信小程序,问了微信小程序的单位rpx
两栏布局的实现方式有哪些,说得越多越好
面向对象的三大特征
接口是什么
闭包是什么
手写一个函数,传入一个函数和数字num,实现只调用num次这个数字(就是使用闭包来实现)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19//例:实现wrapper(a,num):
wrapper(a,2);
wrapper(a,2);
wrapper(a,2);
wrapper(a,2);
虽然调用4次wrapper(),最终只调用a() 2次
解答:
function wrapper(fn,num){
let count = 0
return funtion(){
if(count>num){
return;
}
fn();
count++;
}
}还写了一个URL截取
问到了使用vue和原生js的区别
最后就是部门介绍和反问环节啦
腾讯40min
- 自我介绍和项目介绍
- 了解断点续传吗
- vue的生命周期
- vue的响应式的实现原理
- js的变量提升
- js的作用域有哪些,具体解释一下
- 解释一下闭包
- this的四种绑定
- new和硬绑定的优先级
- HTTP和HTTPS有了解吗
- SSL的实现方式,是对称加密还是非对称加密?
- css的盒模型
- CSS的选择器有哪些,以及选择器的优先级
- 跨域有了解吗
- 反问环节~
阿里40min
阿里的话已经是技术主管面了,所以没有问到经典的基础题目,基本上都是围绕着项目来问的。问了项目的实现、项目的难点和解决方法。因为我的项目用到了vue,提到了单页面,所以面试官有问到单页面和多页面之间的不同以及基本的实现原理、单页面的优势等。还有vue的响应式实现原理之类。我当时想到的是重绘与排。多页面的话,在进行页面跳转时就需要获取不同的HTML文件,在页面上进行渲染。而单页面的话就是一个HTML,加上各种vue组件。要进行不同功能的改变的话就只需要加载组件即可,不需要重新渲染一整个界面。
还有问到前后端分离的方法以及域名加载这些。单页面和多页面的域名会有什么样的不同。
别的还有一些开放题,比如说学习前端的方法,怎么分配时间,有没有读研的打算等等。问到了有没有去看GitHub和别人的博客去学习,学到了什么东西,在项目上怎么使用之类…这个应该还是需要前期做好一些准备才不会在面试时给自己挖坑。
最后还有问到对要面试的部门以及部门主要业务的一些了解。我有回答阿里云的服务器以及开放的api这些。hr问了我,作为一个用户的角度去评价一下阿里云的服务.。这个当时还是有点懵……
许愿offer!
最后总结
面试还是基础和项目两手都要准备。说出的每一句话都可能被问到,所以发言前一定要斟酌好!以及…基础要特别熟悉起来!