当前位置: 首页 > 面试经验 >

快手前端二面(8.3 50min 已凉)

优质
小牛编辑
74浏览
2023-08-20

快手前端二面(8.3 50min  已凉)

  1. 介绍项目难点
  2. 为什么后端进行大数据传输时候需要分页,会出现什么问题(答的不好
  3. sessionstorage和locastoragel和cookie区别(八股)

1.手撕 Promise.allSettled(ts不熟练还是让用ts写了) 25min

  • 开始拓展,有一个sleep函数,然后Promise.allSettled([

sleep(1000).then(()=>console.log(1000)),

sleep(100).then(()=>console.log(100)),

sleep(10).then(()=>console.log(10))

])输出什么?回答的是1000 100 10,这个应该是对的

  • 面试官让看下自己写的代码执行结果是什么,最后经过引导发现是10 100 1000,所以问题出在promsie结束后,应该是通过数组去对应数据,而不是数组push进行,这样会导致输出顺序不对,所以应该改为res[i]={statue:'xx',res},输出才是1000 100 10
  • 继续拓展,面试官询问如果不用count来计数,可以直接用结果数组res的长度来判断吗?刚开始回答的是可以,后来面试官说你确定?我突然意思到不对,但是脑子乱了不值得怎么解释,最后发现是数组定义的问题低级错误不应该啊

2.手撕:.卖买股票最佳时间(lc的easy A)

拓展:面试官说添加一个冷静期,但是本题只是卖卖一次股票,我就询问是买卖两次股票的情况吧,结果面试官说你直接考虑最多N次的情况吧,面试后才发现是(mid+hard结合在一起出了,当时面试没反应过来,怪不得写的迷迷糊糊的)

总结:首先第一个手撕确实收获很多,不是简单的手撕完就结束,通过拓展发现自己之前更多是在表名上,原理性的知识有点薄弱,而且ts也不太熟练。第二个手撕也反应了刷题有点生疏了,经典题没有写好

update:2周后凉

#前端##快手##大厂##秋招#
 类似资料: