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

5/12百度前端一面面经

优质
小牛编辑
93浏览
2023-05-12

5/12百度前端一面面经

全程45分钟

 

自我介绍

介绍一下做过的项目

简单介绍一下社团项目

有没有针对antd进行过二次开发

js有哪些基本类型

如何根据原型链去判断数据类型

如何去判断复杂类型(指多层嵌套的那种)

讲一下promise常用的api以及内部运行机制

讲一下promise.all,promise.any和promise.race的区别

Promise内部有哪几种状态

讲一下js的事件循环

css如何实现隐藏一个元素

如何实现圣杯布局

常用的定位属性有哪些

fixed是根据什么定位的

设置绝对定位后设置margin是否还有效

设置绝对定位后z-index是否还有效

讲一下react的生命周期

讲一下如何在state更新后立刻获取到更新

vue最早在哪个生命周期可以拿到data实例

在created中修改了data之后是否会重新触发生命周期

v-if和v-show的区别是什么,哪个对性能更友好

vue中修改数组中某一项后如何触发更新

 

手撕题

// 有一个数组,数组中有如下四个对象,删选出b和c不同的项目
let arr = [{
  a: 1, b: 1, c: 1
}, {
  a: 1, b: 1, c: 1
}, {
  a: 1, b: 1, c: 2
}, {
  a: 1, b: 1, c: 3
}]

let myFliter = (arr) => {
  let res = []
  res.push(arr[0])
  for (let i = 1; i < arr.length; i++) {
    let flag = false
    for (let j = 0; j < res.length; j++) {
      if (arr[i].b === res[j].b && arr[i].c === res[j].c) {
        flag = true
        break
      }
    }
    if (!flag)
      res.push(arr[i])
  }
  return res
}

console.log(myFliter(arr))

反问

#百度##前端##面经##春招#
 类似资料: