海康威视前端实习一面

电话面试。时间 30min 左右
自我介绍,项目介绍。
1. 项目里用到 styled components,它是怎么实现避免组件冲突的?
如果不用 styled components,怎么避免样式冲突(我说尽量不写同样的类名)
追问还有吗?(太紧张大脑一片空白)
2. CSS 优先级了解吗(引导上一个问题的答案)
3. 讲讲 redux 实现的原理
4. react 中数据的更新时如何触发页面更新的
我回答 state 和 props 的变化,触发 render,引起页面更新。面试官继续追问数据的更新怎么触发render的(不会,,,)一直追问
5. 双指针有哪些应用(我回答快慢指针判断链表有环)
6. 追问如何判断链表有环,如果没环,怎么退出比较(fast 指针指向 null)
追问双指针还有哪些应用?
我回答链表只能通过.next 查找到下一个元素,双指针pre 可以去定位前一个元素)
继续追问,双指针还有哪些应用?可以了解一下,比如滑动窗口。
7. 说说二分查找。二分查找的时间复杂度是什么,怎么算出来的
8. js 数据类型。es6 新增哪些数据类型(symbol,bigint)
9. 追问还有新增其他的引用数据类型吗,(回答set,map),具体讲讲Set 和 Map。
10. 追问为什么要新增 Set 和 Map,是为了解决哪些问题
Set 成员具有唯一性,没有重复元素。
普通对象的key只能是字符串,Map 的 key 可以是其他数据类型(null)
11. weakSet 和 weakMap 对比 Set 和 Map
成员(或键)必须是对象
弱引用
12. 讲讲 event loop
13. 微任务有哪些,宏任务有哪些
14. 微任务、页面渲染、宏任务的执行时机?
回答:先执行微任务 - 尝试DOM渲染 - 执行宏任务
假如 div.innerHTML = "123";
下一行是一个 Promise
问执行顺序
回答:先设置了 div 的 innerHTML,但是页面还没更新。再执行 promise。再页面更新
面试官让我自己下去试试。
自己执行了一下:
var div1=document.getElementById("div1");
div1.innerHTML="abc";
console.log(div1.innerHTML)//----step1,输出“abc”
let p1 = new Promise((resolve,reject)=>{
  resolve()
})
p1.then(v=>{
  console.log("p1成功的回调执行啦");//-----step2,输出"p1成功的回调执行啦"

  alert("abc变了吗")//----step3,跳出弹框"abc变了吗"

})
//----step4 页面渲染出 "abc"

15. 讲讲闭包,闭包的应用
反问:
1. 面试中反映出的问题,对我后续学习的建议
算法部分还需要多了解
react 部分要了解原理
对项目中用到的技术要多了解实现原理



#面试题目##海康威视#
全部评论
这问的也太难了吧
1 回复 分享
发布于 2022-03-24 20:02
30min问了这么多,。。
点赞 回复 分享
发布于 2022-04-15 20:17
我的妈,实习这么难
点赞 回复 分享
发布于 2022-04-08 14:23

相关推荐

连测试都找不到的废物:这银行巨海,别报太大希望,先找找其他的吧。面试完一个月了还没通知,还在一直约人面
投递上海农商银行等公司6个岗位 牛客在线求职答疑中心
点赞 评论 收藏
分享
点赞 评论 收藏
分享
评论
7
25
分享

创作者周榜

更多
牛客网
牛客企业服务