腾讯2020暑期实习——前端视频面试(2)回顾

一、投递信息

  1. 投递时间:2020年2月24日
  2. 岗位:Web前端开发方向—暑期实习生
  3. 工作地点:深圳
  4. 信息来源:有乎求职微信公众号
  5. 面试时间:2020年3月1日
  6. 面试方式:视频面试
  7. 面试时长:48分钟
  8. 面试平台:牛客网

二、面试官问题

  1. position属性,分别基于什么定位,定位方式:
    https://www.w3school.com.cn/cssref/pr_class_position.asp
  2. display取值:
    https://www.w3school.com.cn/cssref/pr_class_display.asp
  3. CSS常用伪类:
    https://www.w3school.com.cn/css/css_pseudo_classes.asp
  4. H5移动端页面自适应:
    https://blog.csdn.net/huang100qi/article/details/81842408
  5. ES6你知道吧,ES6新特性你知道多少?
    https://www.jianshu.com/p/ac1787f6c50f
  6. 那你就说一下let和const吧。
    首先说一下let和var的区别:let和var的使用作用域不同,var有全局作用域和函数作用域,没用块级作用域,let可以声明块级作用域,在{}内有效,可以在for循环内使用,在for循环中定义let i,在for循环中写一个函数,比如setTimeout,在此函数中的i是循环体内部作用域,不受外界影响。
    const:const是定义常量,一旦定义在以后不可以修改。
    https://www.cnblogs.com/jing-tian/p/11073168.html
  7. apply call bind区别:
    https://blog.csdn.net/u010176097/article/details/80348447
  8. this关键字:
    https://www.runoob.com/js/js-this.html
  9. 使用过promise吗?
    https://www.jianshu.com/p/b16e7c9e1f9f
  10. 调试方式:
    https://www.runoob.com/js/js-debugging.html
  11. 文档页面元素获取有几种方法:
    docunment.getElementById
    docunment.getElementsByName
    docunment.getElementByTagName
    docunment.getElementsByClassName
    document.querySelector()
    document.querySelectorAll()
    https://www.runoob.com/jsref/dom-obj-document.html
  12. vue父子通信:
    https://blog.csdn.net/wy6250000/article/details/83793400
  13. 跨域使用过吗?
    https://segmentfault.com/a/1190000011145364
  14. 工作地点是深圳,去深圳的意向如何,你家是哪的?
    我的回答:嗯,很想去深圳,我家比较远,在内蒙古。
  15. 毕业有什么打算,会读博吗?
    我的回答:我毕业确定了会去互联网公司从事前端工作,不会读博。
  16. 编程题:

1)写一个javascript函数实现数字重复元素的查找。比如:
参数输入 [0,1,1,3,2,4,3,5]
返回 [1,3]
我这道题写的老利索了,之前在牛客网上刷过类似的题。然后就看第二道题,都没运行,我真的是。。。咋想的!这是我面试的时候写的代码:

function f(arr){
    var res = [];
    for(var i=0;i<arr.length;i++){
        if(arr.indexOf([arr[i]]) != arr.lastIndexOf(arr[i])){
            res.push(arr[i]);
        }
    }
    return res;
}

错误1(咋还能出现这种错误呢):arr.indexOf([arr[i]]) 应该写成:arr.indexOf(arr[i])
错误2:输出结果是[1, 1, 3, 3]。
悔恨,明明是会的题。
正确代码:

function f(arr){
    console.log(arr);
    var res = [];
    var num = [];
    for(var i=0;i<arr.length;i++){
        if(res.indexOf(arr[i]) ==-1){
            res.push(arr[i]);
        }else{
            num.push(arr[i]);
        }
    }
    return num;
}

2)页面有一个ul,要在ul中插入1000个li,每个li的内容是它当前的序号,点击li会打印出当前li的序号,怎么实现?
序号怎么绑定li标签:


      我的代码,我真的是要被自己气哭了,别的不会咋docunment.getElementById还写错了。。。

      var ul = documentElementId('ul');
      for(var i=0; i<1000; i++){    
      }
      

      后来,我又仔细看题,原来我题都没读明白,我说面试官咋又详细的描述了一遍,我还在想,我知道要实现啥,就是想不到那个插入函数了么。。。
      我以为题目是直接输出1000个li标签,每个标签前边有自动生成的序号。
      结果题目是,点击才会打印当前序号。。。不说别的点击好歹我还能说个click吧,结果一脸懵。
      正确代码:

      window.onload = function(){
              var ul = document.getElementsByTagName('ul');
              var li = '';
              for(let i=0; i<10; i++){
                  li += "
    • li
    • "
      ; } ul[0].innerHTML = li; var tag = document.getElementsByTagName('li'); for(let i=0;i<10;i++){ tag[i].onclick = function(){ document.write(i); } } }

      三、我的提问

      1. 我这个是一面吗?我前几天参加了腾讯的电话面试,我想说和这次面试有关系吗?
        嗯,这个是一面,我们是不同部门的,我们现在面试你,就会把你的简历锁了,解锁以后你还有机会参加其他部门面试,不同部门的面试不会有影响。
        (说明我腾讯的电话面挂了,给我解锁了,我才收到了这次面试机会。)
      2. 面试结果如何都会通知吗?
        嗯,会的,我们会对你的面试进行评估,然后告诉你结果。

      我感觉面试小姐姐想结束这场面试了,就没有继续问下去了,我虽然能回答的问题少,可是我想问面试官的问题老多了,不急,路还长。

      四、感想

      1. 也就是我脸皮厚了,就这水平还敢到处投简历。
      2. 这次面试官问的比较多的是CSS,so我又发现我CSS学的真的是。。。差远了,也就是我乐观吧,还没陷入消极情绪中,还觉得这次比上次回答的多了点了呢!说我不会的次数少了呢!面试时间长了呢!也不知道这么乐观是好事还是不好。。。
      3. 面试官还是很和善的,当我听不懂她问的问题的时候,她会再给我解释一遍然后给点提示,或者打出来(打出来是因为我对知识点不熟,面试官有一丢丢,就是一丢丢的口音,我听不太清楚),而且会给我建议:好好学CSS,毕竟这是基础。嗯!好好学!
      4. 本次面试总结,再学习js、计网的路上,再加一项去W3school看CSS手册,学CSS去。

      PS:纪念一下吧,好看!
      腾讯2020暑期实习——前端视频面试(2)回顾_第1张图片

你可能感兴趣的:(面试)