视频面试,用的是zoom。大概分为两个阶段吧
手撕代码
- 大概30分钟,看个人能力
- 共享屏幕后,面试过会给你一道题目,然后在自己的ide上做。主要是让面试官看到你的解题思路,代码风格,逻辑能力。
- 不管有没有写完,面试官应该都会叫停,然后会说出你算法的一些问题(这个很好),以及面试官自己的解题方法(怎么优化之类的)
- 我的题目如下: 版本号排序:
- 给定一个数组,其中包含多个版本号,对版本号进行降序排序。
- 相同版本号前提下,正式版 > beta > alpha
例一:
输入:['1.0.10', '1.0.3', '1.0.9', '2.0.alpha', '2.0', '2.0.beta']
输出:['2.0', '2.0.beta', '2.0.alpha', '1.0.10', '1.0.9', '1.0.3']
解释:2.0 > 2.0.beta > 2.0.alpha,因为2.0是正式版
技术栈相关
大概30分钟
我的比较零碎,很多都答的不好,然后面试官就转移了方向,唉。
- 为什么离职?
- 回答:
- 技术栈比较落后,感觉没有发展前景
- 公司人员配比不完善,感觉不重视前端
- 回答:
- 主要技术栈是什么?
- 回答:
- vue相关,会一点node
- 回答:
- 有没有封装过公共组件?
- 回答:
- table组件
- 附件预览组件
- 回答:
- react的事件绑定原理?比如onClick为什么会执行?
- 回答:
- 通过React.createElement将事件当作属性传入,然后将该方法中绑定到dom上
- 回答:
- 怎样实现输入框输入完成300ms之后,请求数据?
- 回答:
- 封装为指令,将binding.value包装为防抖回调即可
- 回答:
- a标签上同时绑定href和onClick,哪个先执行?
- 回答:
- 只知道onClick是冒泡阶段执行的,但不清楚href的执行时机
- 回答:
- 既然提到了冒泡,有3个div,父 -> 子 -> 孙都绑定click事件,分别alert 1,2,3,怎样实现只alert 3,1
- 回答:
- 只能想到判断当前点击元素是否是子div来跳过执行。
- 回答:
- vuex了解的怎么样?说下组件的通信
- 回答:
- props、事件总线、provide等。
- 回答:
- 不同标签页之间怎么传值?
- 回答:
- localStorage
- postMessage
- 回答:
- 有什么想问的?
- 回答:
- 华为很注重算法吗?
- 嗯,算法还是比较重要的,巴拉巴拉...
- 华为的技术栈?
- 主要用angular9和10
- 不要担心,vue源自angular,上手会很快,而且有完善的培养计划(感觉有希望通过)
- 华为很注重算法吗?
- 回答: