shopee前端一面凉经
自我介绍,网络延迟没听起憨批到听成面试官说他自我介绍一下,等了半天面试官说让我自我介绍一下
正题:
栈和队列的区别
排序算法有哪些,复杂度是多少(突然想不起来快排叫啥了,然后面试官提了一下,然后问和冒泡排序的区别,应该是我记错了复杂度才问的)
数据库,事务的特性,为什么要使用事务
进程和线程的区别
计算机网络五层模型,应用层有什么协议
HTTP三次握手四次握手,为什么是三次不是两次
从浏览器地址栏输入url到显示页面
上面提到了缓存,然后面试官问了头部和缓存相关的字段
css 垂直居中的方法
ES6的箭头函数
数组类型(当时网不太好,没听太清就过了)
Vue数据双向绑定
V-show和v-if的区别
有什么问他的
就记住这么些,问题也很常规,但自己太紧张了,学的时间不够多,就20分钟,代码都没让我写,就说下思路,还说的不咋好,一面凉凉,就当长见识了,积累经验,希望早日找到offer早日上岸!!!希望早日找到offer早日上岸!!!希望早日找到offer早日上岸!!!
整个面试体验,面试官是个年轻的小哥哥,感觉很注重基础,最后问面试官对于技术的看法,他也说了基础原理最重要,项目都是在理解的基础上才能写得好
附上代码题:
Promise.resolve().then(() => { console.log('1'); throw 'Error'; }).then(() => { console.log('2'); }).catch(() => { console.log('3'); throw 'Error'; }).then(() => { console.log('4'); }).catch(() => { console.log('5'); }).then(() => { console.log('6'); });问打印结果
给你一个数组 nums,对于其中每个元素 nums[i],请你统计数组中比它小的所有数字的数目, 以数组形式返回答案。
换而言之,对于每个 nums[i] 你必须计算出有效的 j 的数量,其中 j 满足 j != i 且 nums[j] < nums[i] 。示例 1:
输入:nums = [8,1,2,2,3]
输出:[4,0,1,1,3]
解释:
对于 nums[0]=8 存在四个比它小的数字:(1,2,2 和 3)。
对于 nums[1]=1 不存在比它小的数字。
对于 nums[2]=2 存在一个比它小的数字:(1)。
对于 nums[3]=2 存在一个比它小的数字:(1)。
对于 nums[4]=3 存在三个比它小的数字:(1,2 和 2)。
示例 2:
输入:nums = [6,5,4,8]
输出:[2,1,0,3]
示例 3:
输入:nums = [7,7,7,7]
输出:[0,0,0,0] 问最优解