北京英视睿达(腾讯会议20+分钟)
感觉就问了一些js,后面面试官突然不说话了,然后协商了一下结束了,感觉直接寄了o(╥﹏╥)o
过程
自我介绍
promise
- 一个 Promise有以下几种状态:
- pending: 初始状态,既不是成功,也不是失败状态。(这个忘记了,pending好难记o(╥﹏╥)o)
- fulfilled: 意味着操作成功完成。
- rejected: 意味着操作失败。
- 状态不可逆(当时没想明白)
判断一个数组是数组()
- isArray
- Object.prototype.toString.call()
- instanceof Array(忘了这个)
- construct(也没说这个 不过跟instanceof 相似都是根据原型判断)
常用深拷贝的方法(还有常用的?不就自己造和Json吗)
- 说了递归 然后判断数据类型 重新创建对象深拷贝
- JSON
position的几种属性
relative 和 absolute分别相对那个定位
- absolute 相对父元素进行定位
- relative相对于自身定位
- fixed 相对于窗口进行定位
display
- display 属性设置元素是否被视为块或者内联元素以及用于子元素的布局,例如流式布局、网格布局或弹性布局。
- display: block; display: inline; display: inline-block; display: flex; display: inline-flex; display: grid; display: inline-grid; display: flow-root;
flex都有什么
- flex-direction
- flex-wrap
- flex-flow
- justify-content
- align-items
- align-content
改变flex方向为竖着的(忘了属性值了,没答上来o(╥﹏╥)o)
数组扁平化
- flat
去重 (Set(...array))
数组反转reverse
vue生命周期
vue插槽
- 具名插槽
- 作用域插槽
- 默认插槽
父子通信
- props
- 传递方法(忘了大多数怎么搞的了o(╥﹏╥)o)
- 全局事件总线
- vuex pinia
vue3 为什么 Proxy代理了 defineProperty
- defineProperty
Object.defineProperty()
方法会直接在一个对象上定义一个新属性,或者修改一个对象的现有属性,并返回此对象- 通过
defineProperty
两个属性,get
及set
实现响应式 - 缺点 检测不到对象属性的添加和删除数组API方法无法监听到需要对每个属性进行遍历监听,如果嵌套对象,需要深层监听,造成性能问题
- proxy
Proxy
的监听是针对一个对象的,那么对这个对象的所有操作会进入监听操作,这就完全可以代理所有属性了- 总结 Object.defineProperty只能遍历对象属性进行劫持Proxy直接可以劫持整个对象,并返回一个新对象,我们可以只操作新的对象达到响应式目的
echarts用过那些配置项(啊,给我问蒙了)
echarts options series type 的一些属性(没答上来)
- line折线图
- bar柱状图
- 饼图pie
- 散点图 scatter
- 地图 map
- 关系图 graph等
git代码管理和命令
处理路由
webpack基本配置