Bird的前端秋招面经

931 阅读11分钟

Hello,大家好!我是Bird,也叫伯德,也叫阿鸟!其实距离秋招过去已经有一段时间了,在这里我就把我的秋招面经分享出来了,很可惜没有一线大厂的面试经历,校招最主要的还是重基础,希望能够帮助到正在准备春招的小伙伴们!加油!

CVTE提前批(offer)

CVTE技术面经 9.7

  1. 自我介绍
  2. CSS布局的方式
  3. 两栏布局实现的方法
  4. 平时处理过CSS兼容性问题吗
  5. ES6的新特性
  6. 箭头函数和普通函数的区别
  7. 为什么箭头函数不能new
  8. this的指向问题
  9. 事件冒泡机制
  10. 怎样阻止事件冒泡
  11. HTML标签内定义事件和用addEventListener定义的区别
  12. 熟悉网络协议吗
  13. http和https的区别
  14. 讲一下TLS协议
  15. https的数字证书是怎么回事
  16. 数字证书和密钥有什么关系
  17. 项目中有没有用到相关的加密措施
  18. node.js学习程度
  19. 有用过Jquery吗
  20. vue和react的区别
  21. 讲一下单向数据流
  22. 子组件修改父组件的值也是可以实现的,为什么不呢?
  23. 有没有了解过Vue3.0,有什么新特性
  24. 算法题1:求两个数组的交集
  25. 算法题2:判断字符串中的括号是否为有效括号
  26. 反问环节

CVTE综合面经 9.12

  1. 有没有offer,投递了哪些公司,为什么没有投递bat大厂
  2. 期望薪资是多少
  3. 理想的工作时间,地点
  4. 怎么看待加班
  5. 最需要改变的性格
  6. 从小到大最沮丧的情况,多久调整过来
  7. 再来一次的话,你会怎么做
  8. 高中的学习情况,为什么不能更好
  9. 家庭组成,家里人的工作
  10. 家庭的经济状况
  11. 未来三年、五年、十年的工作和生活规划
  12. 小时候最难忘的事情
  13. 平常有没有写过博客之类的
  14. 有没有什么兴趣爱好,频率如何
  15. 反问的时候,我问了如果收到offer,能否提前去实习(表明我可以提前去实习,小心机

欢聚集团(offer)

欢聚技术一面 9.17

  1. H5的语义化标签有哪些?语义化标签的作用

  2. css的选择器权重

  3. 讲一下响应式布局,有什么方法,用过哪些

  4. varletconst的区别

  5. let的暂时性死区

  6. 函数参数传入的是值的引入吗

  7. 讲一下原型链

  8. 原型链和作用域链的区别,使用场景

  9. 讲一下闭包,做了一道代码输出题,提问是否构成闭包

    let name = 'zzz'
    let obj = {
        print: function () {
            console.log(name)
        }
    }
    function Fn() {
        var name = 'zxc'
        return obj.print
    }
    Fn()()
    
  10. 有哪些异步请求

  11. Promise底层如何实现异步

  12. webpack的理解、有哪些常见配置

  13. webpack有哪些配置模块

  14. 聊了计网,浏览器缓存、浏览器安全、cookie作用和属性等,问的比较深入

  15. 反问环节

欢聚技术二面 9.27

  1. 自我介绍
  2. 聊项目
  3. 登陆鉴权的流程
  4. 在登陆成功后,修改数据库取消该用户权限,如何终止其操作 (不刷新
  5. js文件中的对象在多个组件中应用,实现类似vuex的响应式(了解vue官方文档
  6. 输入url之后会发生什么...
  7. 为什么TCP需要三次握手?多个客户端请求,服务端如何确认对应的那个?
  8. 服务端返回的html如何渲染成dom节点
  9. 解析html遇到script标签会发生什么?asyncdefer的区别?
  10. 为什么浏览器要设置成:遇到script标签要阻塞渲染?
  11. 手写题:实现一个队列,pushpop方法
  12. 应该还有其他的题目,有点想不起来了,然后是反问环节了

欢聚技术三面 9.29

虽然邮件上写的是技术三面,但是hr在电话里说面试时间半小时左右,就聊聊天了解一下情况,很快就结束,这让我误以为是hr面... 面试官介绍说自己是部门负责人好像,问的问题也比较的泛,就不是那种某块知识点这种

  1. 自我介绍(主要让我介绍自己在前端的学习
  2. 聊了一些项目的场景
  3. vuereact的区别,使用的区别和场景应用的区别
  4. 哪些类型的项目用vue或者用react比较好
  5. 如何评估一个项目的性能,有什么手段
  6. 有哪些性能优化的方法
  7. 有没有了解过webp的图片格式
  8. 问了一些webpack的一些内容
  9. 输入一个url,会发生什么...
  10. 页面如何解析html文件
  11. shell有了解过吗
  12. linux系统熟悉吗
  13. 你觉得你的优势和劣势是什么
  14. 反问环节

转转(offer)

转转一面面经 9.14

  1. 熟悉技术栈是vue还是react,怎么学习的前端
  2. 有没有了解vue3.0vue3.0为什么要用proxy
  3. react用类组件开发还是hooks开发
  4. 讲一下useEffect,我们可以在useEffect中完成什么操作
  5. 讲一下reduxredux数据是怎么渲染到组件的
  6. vue的响应式如何实现
  7. 如何判断一个对象为空对象
  8. 数据类型的判断,Object.prototype.toString.call输出值是什么
  9. 如果在Object.keys()中传入一个字符串输出什么?为什么?
  10. 如何判断空数组
  11. ES6中的方法判断数据是否为数组
  12. 讲一下JS继承,具体描述组合继承和class继承
  13. 三栏布局的实现,回答了flex布局
  14. 为什么flex: 1就可以实现自适应,1是哪个属性的值
  15. flex是几个属性的组合,分别是什么
  16. 动画:一个小球,hover之后1s内半径变大,0.5内如何变回原样,好像是这样
  17. keyframes是一个属性吗
  18. 写一个方法实现 传入数值的n次幂
  19. 写一个方法解析url路径,实现:如果传入key值,输入value值,如果不传值,输出全部参数
  20. 讲一下cookie、localStorage、sessionStorage
  21. 你刚刚说到cookie不适合做存储,那它的作用是什么
  22. 有了http,为什么还需要https
  23. https如何解决http的问题
  24. 反问环节

转转二面面经 9.16

  1. 问项目,包括了H5的拖拽api、vue的动态组件等
  2. vue的服务端渲染
  3. vue的keepAlive原理以及如何实现路由切换缓存
  4. 讲一下vuexmodule
  5. node如何连接数据库,node的学习程度
  6. 如何实现跨域(后端的做法和前端的做法)
  7. 那个请求方法作为预检请求
  8. webpack的学习程度
  9. css中的sticky属性,问的挺深入
  10. sticky的用法、sticky的兼容性问题、如何实现一个sticky
  11. 如何检测属性的兼容性 (答了用can i use,面试官说在代码中体现,没听过)
  12. 有没有做过H5页面
  13. 微信小程序的生命周期
  14. flex布局中,justify-contents属性有哪几个值
  15. flex属性是由哪几个值组成的,默认值分别是多少
  16. 如何检测一个对象是空对象
  17. 如何将一个二维数组转换为对象
  18. 有没有用过ES6的class,讲一下static
  19. 什么时候开始学前端,如何学习前端
  20. 算法题:数组a = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15],数组b = ['a','b','c','d'],实现a数组每隔5个数据插入一个b数组中的数据:[1,2,3,4,5,'a',6,7,8,9,10,'b',11,12,13,14,15,'c','d']
  21. 反问环节

转转HR面面经 9.23

  1. 自我介绍
  2. 大学的专业课程
  3. 为何选择前端,如何学习前端
  4. 大学成绩如何
  5. 实习经历的收获
  6. 一直在广东,不考虑去外省发展吗
  7. 对毕业后工作的期望
  8. 如何看待二手行业
  9. 有没有买过或者卖过二手用品
  10. 反问

普渡机器人(HR面挂,要的太高)

普渡机器人一面 9.11

  1. 讲项目
  2. 块级元素和行内元素的区别
  3. 讲一下css定位
  4. 闭包是什么
  5. react的生命周期
  6. react类组件和函数组件的区别
  7. 如何防止react子组件的重复渲染
  8. vue的nextTick原理
  9. 讲一下http
  10. https解决了http的哪些问题

普渡机器人HR面 9.16

  1. 对之前技术面试的一个评价
  2. 自学前端的途径
  3. 针对简历中的项目问了想法和遇到的难点
  4. 实习过程做了什么
  5. 实习时间不长,为什么不实习久一点
  6. 自己开发项目之后的一个收获
  7. 总结自己的优势,回答三点
  8. 对于未来工作的企业有什么期望
  9. 自己有哪些特点需要改正
  10. 期望的薪资

富途(二面挂)

富途技术一面 9.17

  1. 聊了项目,问的比较深入,具体模块的实现

  2. 如何判断一个变量是否为数组,四种方法

  3. 判断的这些方法是随便选一个用的吗?还是具体场景有所选择

  4. instanceof原理

  5. 封装一个可以设置有效时间的localStorage

  6. 输出题:一道是原型链继承、一道是this指向,好像还有一道忘了

  7. 改变this指向的方法,具体问了bind的实现

  8. 算法题(用递归实现斐波那契数列,要求缓存)

    function Fibonacci() {
        let arr = [0, 1]
        return function fn(n){
            if(n < arr.length) {
                return arr[n]
            }
            arr[n] = fn(n-2) + fn(n-1)
            return arr[n]
        }
    }
    
  9. 网络安全,具体聊了httpsxss攻击、csrf攻击

  10. getpost 的区别

  11. 预检请求是什么

  12. a.comb.com 发请求,请求会发出去吗

  13. 跨域的方式有哪些

  14. 反问环节

富途技术二面 9.23

  1. 自我介绍
  2. 实习经历
  3. 讲项目,聊得比较深入,难点
  4. 登陆 --> 内容页面,需要几个接口,什么功能,什么技术
  5. 讲一下jwt(怎么计算、为什么用、存哪里
  6. 浏览器安全问题
  7. cookiesession 的区别
  8. getpost 的区别(一直问还有吗...
  9. 讲一下预检请求
  10. 五子棋的AI逻辑,问了实现逻辑(乱说一通
  11. 深度优先遍历和广度优先遍历(要求前端中有没有遇到过,吐了...

深信服(二面挂,搞不懂...)

深信服一面面经 9.25

  1. 自我介绍
  2. 问项目,项目难点
  3. vuex 的个人理解
  4. vuex的各个模块用法、使用流程、刷新后数据丢失咋整
  5. 手写数组扁平化的多种方法
  6. 手写算法:删除字符串的所有相邻项
  7. 事件循环输出题
  8. 手写算法:单链表的反转(迭代和递归

深信服二面面经 9.26

  1. 自我介绍
  2. 算法:二叉树的题目:路径总和ii
  3. 实习经历的收获
  4. 项目难点
  5. 路由鉴权 (权限) 的完整流程,动态路由的缺点、优化手段
  6. 讲解axios的二次封装、使用
  7. 懒加载的用法、实现原理
  8. 防抖优化的用法、实现原理
  9. 搜索框的一个场景优化
  10. 什么时候学习前端?如何学习前端?学习过程最有成就感的事情
  11. 反问环节

万兴科技(二面拒了)

万兴科技一面 9.28

  1. 自我介绍
  2. 聊项目
  3. 归并排序思路
  4. 二分查找思路
  5. get请求默认缓存,如何不进行缓存
  6. position有哪些属性,脱离文档流的有哪些
  7. 垂直居中布局的方式有哪些
  8. 按钮重复点击的优化
  9. 回流重绘
  10. 异步请求的发展
  11. a b c三个请求,如何实现a和b同步执行后再执行c
  12. reduce的用法
  13. webpack的配置
  14. vue的组件通信方式
  15. 反问环节

小鹅通(二面拒了)

小鹅通一面面经 9.24

  1. 自我介绍
  2. 数组有哪些方法
  3. 排序有哪些算法,问了选择排序的实现
  4. Promise有哪些API,allrace的区别
  5. 宏任务和微任务的区别
  6. setTimeout是不是到了那个时间点就一定执行?
  7. 项目图片懒加载怎么做,实现原理
  8. MVVMMVC
  9. webpack常用配置有哪些
  10. LoaderPlugin 的区别
  11. 职业规划、如何带好团队、团队内部意见不和怎么办
  12. 反问,技术栈是vueuniapp