楼主是转行做前端码农的一枚渣硕,从去年找实习开始,在牛客网收(白)获(piao)了很多前辈大佬们的前端面经、面试体验、刷过剑指offer等题目,收益很多。所以想着能将自己今年的面经奉献一波,回馈牛客,希望能给自己积攒人品。除打括号外均为前端面经,略去所有hr面,因为基本都是问人生理想,家庭情况,个人意向等等。

        虾皮(测试):         一面:
        自我介绍
        为什么想做测试
        vue的生命周期
        浏览器请求的过程
        tcp三次握手的过程
        sql优化(不会)
        linux常用命令
        算法:数组中最大连续子序和
        场景:淘宝购物车如何做测试?举出测试用例

        二面:
        自我介绍
        场景:如何做一个在员工生日前一天发送贺卡的项目。你从产品、测试、开发的角度考虑一下应该做什么
        (场景主要是自述。观察对一个开发项目的理解)
        linux如何查询某个文件中的字句?其余命令?

        京东:         一面:
        自我介绍
        在华为实习做了什么?
        单页面应用会出现什么问题?(f5之后会出现404,前端如何解决?)
        深拷贝的方式
        JSON.stringify()会出现什么问题?还有吗?(循环引用,如何解决)
        前端安全如何保证
        排序算法你知道哪些
        JS中的sort函数底层是如何实现的
        平时如何学习的

        小米:         一面:
        rem与em的区别
        css如何画一个三角形
        css垂直居中布局
        手写bind(问了this指向是谁)
        手写map
        用过哪些ES6
        http状态码 405 304
        浏览器渲染过程

        猿辅导:         一面:
        自我介绍
        项目中使用的技术栈都有什么?有什么用?
        ES6都用过什么?
        eventloop解释
        如何实现一个红绿灯?初始为绿灯,间隔3S后变为黄灯,间隔1S后变为红灯,间隔2S后变为绿灯。两种方式代码实现一下。(利用节流函数类似的方法实现了一种,promise的api一慌给忘了。难受,只能讲一下思路)
        OSI七层模型。各个层都在做什么?
        如果解析到了html文件,浏览器如何渲染,要求完整过程
        算法:二叉树,有了前序、中序,重建二叉树
        你有什么要问我的吗?

        北森:         一面:
        自我介绍
        vue组件通信方式
        父子通信,如何实现父组件更新,子组件不更新
        为什么要用vuex
        vuex有哪些特点
        不用vuex如何实现不相关组件的通信(eventbus、postmassage、localstorage)
        css实现九宫格
        如何消除三个33%之后页面最下方的白线
        垂直居中的方式
        算法:找到字符串中出现次数最少的字符
        关于JS你是如何学习的
        你有什么想问的

        二面:
        promise如何实现比promise.all次一级的函数。也就是说,不用等数组里面所有的promise实现完,只需要实现其中2个就返回true
        promise.then()与promise.then.then()的区别
        前端优化有哪些手段
        闭包例题
        闭包的使用场景
        eventloop解释一下
        浏览器的请求过程
        场景:给定一个树形的数据结构。如果有子节点就定义为<ul>,没有就定义为<li>,解析并添加到页面上。
        var tree = { children:[{ children:[] },{ children:[{ children:[{ text:'12345678' },{ text:'qwer' }] }] } ] }  

        搜狗:         一面:
        自我介绍
        手撕代码--前端路由实现(JS原生)

        手撕代码--图片懒加载实现(JS原生)
        实习时候都做了什么?
垂直居中的方式

        二面:
        自我介绍
        vue与react的区别?
        前端安全有做哪些?
        http2.0
        xss你如何防护?
        场景:如果有运营商在你的代码中插入一段script脚本广告。你如何防护?
        客户页面一直是白屏的,而我们观察却是正常的。如何排查问题?
        你对现在的大前端有什么看法

        奇安信:         一面:
        (根据简历上的内容顺序念)
        自我介绍
        项目技术栈?
        不使用vuex有什么后果?它本身有没有什么弊端
        在华为实习做了什么?
        介绍下JS的原型链
        两段代码给出结果,知识点:闭包
        从输入url到页面
        前端优化有哪些手段
        ......

        二面:
        html里<head>可以放那些标签?
        html里有target属性的都有哪些元素?
        鼠标拖动方块的动画触发了哪些事件?
        数组乱序的方法
        (说我给出的第二种方法效果不好,第一种方法利用的sort函数在低版本不同浏览器实现方法有些不同。答:低个数的时候sort用的插排,数量多就会使用快排。回:我们)

        问我没有觉得自己还可以的地方
        (答:数据结构,二叉树算法那方面。他:那都是在学校学过的,问着没意思。)
        ??????
        还有没有?
        (答:CSS的布局我也觉得可以。他:那不是看看教程就行了。没啥问的,看不出来有没有良好的逻辑,是不是适合做我们员工。)
        ????????????
        还有哪些地方吗?
        (答:排序算法。快排、插排、堆排......他:难道我现在问你快排的思路让你给我解释,你能行吗? 我:手撕都行。他:那肯定不会问了。别的面试官也不应该问这个。)
        ??????????????????
        (回:这样好了,你说让我问你算法,我就问你一个。内心OS:可以。这波抓住机会)
        在XY坐标里,如何判断两个矩形是否有重叠
        (这不就是判断xy中点的坐标么)
        ????????????????????????
        总结:面试体验真的一言难尽。。。

        滴滴:         一面:
        自我介绍
        vuex是干啥的
        vue-router实现方式有哪些
        h5里有哪些新增的api
        css里有哪些动画
        解析url,得到参数对象
        ES6都用过哪些?
        var、let、const
        js的事件循环
        new操作符都做了些什么
        你是怎么理解js里的作用域的
        假如js里没有除法,你如何实现?
        你写一个函数,输入2的时候返回3,输入3的时候返回2

        二面:
        自我介绍
        你都学习了前端相关的那些知识
        你是如何理解前端性能的
        前端性能优化
        vue-router的实现方式
        history和hash路由有什么区别
        history刷新会出现什么?如何解决
        css的动画比js的动画为什么性能好
        vue的生命周期
        一般把ajax请求放在哪
        如果我就是想在created里操作dom怎么弄
        promise你知道吗?你都知道那些事件队列
        node的eventloop你了解多少
        什么操作会产生回流
        为什么回流特别浪费性能
        浏览器的渲染过程
        你结合浏览器的渲染过程再解释下回流浪费性能的原因
        你的职业规划
        你是怎么学习的

        三面:
        自我介绍
        项目特点
        websocket有什么特点
        ajax轮询呢?他们有什么区别
        你说一下从输入url到浏览器输出会发生什么
        前端性能优化
        回流是如何触发的
        重绘呢
        js除了删或加DOM,有哪些属性可以回流
        为什么他们可以触发回流
        我有一个无限循环的长列表,你会怎么优化
        首页白屏你会怎么排查
        你有接触过移动端吗
        动画掉帧你会怎么办
        你说一下回流时候浏览器都做了些什么
        那我有一些回调事件,在16.7ms内渲染不完,怎么办?为什么是16.7ms?
        你是怎么学习的
        你的知识链是怎么搭建的
        都看过什么书
        给你一些建议吧balabala...

        58转转:         一面:
        自我介绍
        如何解决PC端和移动端自适应问题 https://blog.csdn.net/zhanghuiping12/article/details/70207634
        box-sizing你有了解过吗
        不定宽高的元素 水平垂直居中
        git 回滚分支
        git reset 加不加hard有什么区别?
        package.json里dependencies、 devdependencies有什么区别?打包时候有什么区别?
        实现一个简单的CSS动画,实现一个圆形,鼠标移动上去,在1s内放大一倍
        为什么组件中的 data 必须是一个函数,然后 return 一个对象,而 new Vue 实例里,data 可以直接是一个对象?
        vue 路由模式
        寻找一个数组中(例如: arr:['1',1,6,'a',9,'9'])中重复次数最多的元素,以及其重复次数,并使用es6方式将此方法导出(注意数组里的元素类型不相同!)
        导出之后的引入会有几种方式?import a 和import {a}有什么区别?

        二面:
        自我介绍
        你在实验室做的项目都用到了哪些技术栈?
        vuex是干嘛的?我为什么不直接创造一个全局变量来实现组件通信?
        你有做过移动端吗?
        localstorage和sessionstorage、cookie有什么区别?
        vue是如何渲染一个组件的?

        Vipkid:         一面:
        自我介绍
        html里行内元素和块级元素有什么区别
        es6你都用过哪些
        http状态码
        <script>里defer和async的区别
        https的过程
        你们是如何做登录页面的
        vuex你有碰到过什么问题吗
        前端性能优化
        闭包
        内存泄露、内存溢出有什么区别
        js的继承是如何实现的?和java比较有什么特点?
        this的改变你知道哪几种
        Object.prototype.__proto__返回什么?
        水平垂直居中的方式
        css样式权重
        伪类、伪元素你都知道哪些?为什么要有这些?
        [1,2,3].map(parseInt)的结果
        '123'字符串反转你有几种方式

        二面:
        自我介绍
        typescript有什么特点,typescript现在有什么样的发展趋势呢?
        你的项目为什么会用到fileReader
        git工作流。你是如何和团队中其余人合作的
        前端性能优化
        你刚才说到svg和canvas的区别,你说哪个是放在内存中执行的?对内存的损耗有多少?
        学生应该要对这些知识细挖,我想知道的是,这里的性能优化方案,有没有缺陷、限制?
        vue的diff算法你介绍下,和react的diff实现有什么区别吗
        vue的动态路由、动态组件你知道是什么吗?
        tcp和udp的区别
        localstorage、sessionstorage
        你都自学了哪些计算机基本课程

        马蜂窝:         一面:
        自我介绍
        跨域的处理方法
        你觉得JS是一个怎么样的语言
        js为什么是一个单线程的语言
        那js是如何实现回调的
        前端性能优化
        从输入账号密码,到页面展示,经历了那些过程
        浏览器如何解析一个html文件
        我在页面上输入账号姓名,你实现一个7天免登录
        sessionId和token的区别,md加密算法能反解密吗
        http code你都知道哪些
        tcp三次握手的过程
        tcp、udp的区别
        tcp是如何实现稳定传输的
        tcp数据包你画出来(炸裂...根本记不住)
        知道什么是rpc吗
        https和http有什么区别
        type of 可以返回哪些值
        dom、bom的区别
        MVVM和MVC的工作方式
        let、const、var
        你有什么要问我的

        华为(通用软件开发):         一面:
        自我介绍
        求1-100的完美数
        二进制转换

        二面:
        自我介绍
        算法题:一个数字字符串,判断有多少个组合可以凑成合法的ip地址。如:'25525511135',可以有['255.255.11.135','255.255.111.35']两种情况
        tcp如何控制稳定传输?
        滑动窗口和拥塞控制是如何实现的?
        有自学过哪些计算机本科内容?
        DHCP知道吗?
        设计模式都知道哪些?代码写出来。
        如何写出好的代码?
        实习都做了什么?
        微服务的分布式是如何实现的?需要注意哪些?
        加强对java的学习
        你在前端是如何做安全的

        学而思:         一面:
        自我介绍
        http协议是如何连接的
        websocket你有使用过吗
        你如何理解BFC
        水平垂直居中的方式有哪些
        你是如何理解JS的作用域的
        vue的双向绑定原理
        使用innerHTML有什么特点?
        getElementsByTagName和其他的getElement有什么不一样的地方?(没听懂)
        ‘1’+2的输出结果?
        数组方法every()和some()的区别
        讲一下快排的思路
        算法:一个数组[2,8,6,12],求其最小公倍数

        二面:
        自我介绍
        在华为你都做了什么?
        前端性能优化
        图片转化为base64,再通过网络传输会有什么结果?为什么会快一些?
        跨域通信的方式(深挖了postmessage,要求说明使用场景)
        websocket的链接过程?
        协商缓存和强缓存
        前端安全你做了哪些?
        csrf到底是如何产生的?除了script和img,你还能想到其他的方式吗
        服务端如何帮忙配置防护csrf
        XSS的防护,利用htmlencode转义
        在华为的这段时间你学习到了什么?

        平安人寿:         一面:.
        http包结构手写一下
        http2.0的好处
        http2.0需要加密吗
        http常见状态码
        协商缓存、强缓存有什么区别
        状态码101是什么?(切换协议)
        JS死区(就是变量提升)
        JS原型链
        引用类型、基本数据类型都有哪些?区别?
        eventLoop解释下
        ES6有用过哪些?
        平时怎么学前端?

        三面:
        你的项目为什么使用了vue
        sql注入了解吗
        你觉得做开发需要什么
        跨域解决方法
        tcp、udp的区别
        其余的问题随机性较大

        美团:         一面:
        自我介绍
        浏览器的渲染过程
        http和http2.0的区别
        https的流程
        跨域的解决方法
        flex盒子
        css盒模型
        html里input都有哪些类型
        水平垂直居中的方式有哪些
        协商缓存与强缓存
        你说到了no-***和no-store,你知道这两种情况下都是怎么存储的吗?硬盘,内存?

        二面:
        自我介绍
        闭包
        vue的生命周期(深挖mounted)
        项目登录页面是怎么做的
        前端安全是怎么做的
        如何实现一定时间内用户登录状态保存
        cookie与session的区别
        跨域的实现方式
        你说的cors有没有什么缺点?
        算法:题目可以看做二叉树的前序遍历

        三面:
        ipv4 和 ipv6 除了ip不同还有哪些特点?
        https的详细过程
        ca数字证书是怎么认证的
        OSI七层模型
        物理层和数据链路层中的比特流是怎么回事
        现在的大前端你是怎么看的
        (太菜只能答出来一点...面试官给了两[凉]道很简单的算法打发我走了)
        算法:菲波那切数列两种思路
        数组拍平能想出来几种方法

         个人面经到此为止了吧。有一些公司的面经没有记录,因为有些问的问题太过于常见已没有回忆的价值。
        真诚的建议:
        1、重视基础,重视基础,重视基础,重视基础,重视基础,......
        2、前端已不是单纯的页面仔了,所以仅会那老几样东西压根没竞争力

        3、摆正心态。某一次面试失利,一点问题都说明不了(甚至有可能该企业就是单纯的不想要人。。。)默默总结经验,踏实付出才是硬道理,后面一定会有不错offer的!(虽然我没有&#129315;)

        祝福各位有缘的看官offer多多,前途无量!匿了~~

原文作者:我不喜欢柚子
原文链接:https://www.nowcoder.com/discuss/345853?type=2

共收到 0 条回复
暂无回复。
回帖
B Color Image Link Quote Code Smilies
Command + Enter
快速回复 返回顶部 返回列表