作业帮前端一面二面面经

(作业帮前端一面二面视频面)
一面:(52分钟视频面)
1.为什么学前端

2.你了解的CSS长度单位

3.display常见的值以及区别

4.你知道哪些元素默认是inline-block的

5.position属性的区别

6.子容器垂直水平居中

7.代码题。数组去重,不能用set。写了个简单版,然后面试官问,你怎么考虑原型上本来就存在的属性,会不会导致判断出错?如何避免?(当时没答上来,我回答了一个Object.create(null),但后面下来查资料发现可以用hasOwnProperty,面试官也应该想听到我说hasOwnProperty)

8.代码题。n*n数组,从a[0][0]走到a[n-1][n-1]有多少种走法。我写的是用递归,然后面试官说,这样子如果n的规模是几十几百你这算法就跑不动了。接着我给面试官说了一下dp(动态规划)的思路。这道题也确实该用递归。

9.反问环节

(哈哈,感觉回答得不好,深层次的东西我知道一些,但我就答的简单的,啊哈哈哈哈...凉凉)

--------------------------------------------分割线-----------------------------------------------------------------

二面:(46分钟视频面)

1.个人介绍

2.学校有前端的课程吗?

3.为什么要选vue这个框架?

4.vue生命周期函数

5.vue组件的通信

6.组件中的data为什么是个函数

7.JS解决单线程的方法

8.ES5、ES6的区别

9.ES6新加的东西,你知道的都说一遍

10.Class实现面向对象的原理。Class的继承说一下。

11.代码题。给定一个包含大写英文字母和数字的句子,找出这个句子所包含的最大的十六进制整数,返回这个整数的值。数据保证该整数在int表示范围内。例如:"012345BZ16" ,最大数“12345B”对应十进制为1193051。

(这个代码题就很有意思了啊,我最开始写的时候忽略了parseInt的第二个参数导致多写了很大一堆,我傻乎乎的一位一位的加)
function solve( s ) {
    // write code here
  // 记录最大的字符串
  let maxstr = ''
  // 记录最大的值
  let maxnum = 0
  // 全局匹配符合要求的字符串
  let arr = s.match(/[0-9A-F]+/g)
  // 记录当前执行的字符串的长度
  let templen = 0
  for(let i = 0; i < arr.length; i++){
      // 这个if是用来过滤比之前运行过的字符串更短的字符串
      // 短的字符串肯定比之前的数字小
      // 当然还可以直接比较字符串的大小,然后再进行运算
    if(arr[i].length >= templen){
      templen = arr[i].length
      let temp = parseInt(arr[i],16)
      if(temp > maxnum){
        maxstr = arr[i]
        maxnum = temp
      }
    }
  }
  return maxnum
}
12.反问环节
(我也不知道二面面试官对我的感觉怎么样,emmmmm,好残忍)
#作业帮##前端工程师##实习##面经#
全部评论
这问的好基础啊
点赞 回复 分享
发布于 2020-05-25 18:51
楼主,是内推嘛,作业帮有笔试环节嘛
点赞 回复 分享
发布于 2020-05-26 09:27
楼主是一面二面在同一天的吗?
点赞 回复 分享
发布于 2020-08-31 23:39

相关推荐

3 21 评论
分享
牛客网
牛客企业服务