OKLink:欧科云链 真实面经

来源:17-2 社群资源-面试预约

Sunday

2023-07-06

写回答

1回答

Sunday

提问者

2023-07-06

xxx 面试记录:2022-10-08

两次技术面试。

一面:技术面

  1. hooks为什么不能放在if里
  2. useContext
  3. useMemo
  4. 自定义hook
  5. 数字精度问题
  6. 检测数据类型
  7. Promise链式调用,以下分别输出什么
Promise.reject(1)
  .then((num) => {
    console.log(num)
  })
  .catch((num) => {
    return num + 1
  })
  .then((num) => {
    console.log(num)
  })
// 2
Promise.resolve(1)
  .then((num) => {
    console.log(num)
  })
  .catch((num) => {
    return num + 1
  })
  .then((num) => {
    console.log(num)
  })


// 1
  1. 输入框获取焦点边框高亮
  2. 列表表头吸顶
  3. 一个父级div,有两个子div,一个固定高度,另一个高度填充满
  4. 手写算法:[{ price: 1, size: 2 }, { price: 2, size: 2 }, { price: 1, size: 1 }]] 依次按照price、size降序排序
function sort(arr{
  for (let i = 0; i < arr.length; i++) {
    for (let j = i + 1; j < arr.length; j++) {
      if (arr[i].price === arr[j].price && arr[i].size < arr[j].size) {
        ;[arr[i], arr[j]] = [arr[j], arr[i]]
      } else if (arr[i].price < arr[j].price) {
        ;[arr[i], arr[j]] = [arr[j], arr[i]]
      }
    }
  }
  return arr
}

二面:技术面

  1. 问简历中做多端组件库做了那些组件,有没有遇到什么问题
  2. 重绘&重排,那些操作可以导致
  3. 浏览器渲染过程
  4. component、PureComponent区别
  5. 以下输出:
var name = 'global'
var obj = {
  name'ngnce',
  log() => {
    console.log(this.name)
  }
}
obj.log()


var obj = {
  name'ngnce',
  log() => {
    console.log(this.name)
  }
}
obj.log()
  1. 哪些样式可以继承
  2. e.target e.currentTarget有什么区别
  3. 图片懒加载,路由懒加载实现原理是什么
  4. hooks你们实践的经验是什么
  5. 手写深拷贝,循环引用问题如何解决


0
0

前端共学会,学习/成长/工作/职业,综合服务社区

前端共学会:帮助每一位前端开发者的综合服务社区

162 学习 · 57 问题

查看课程