应届渣渣前端的艰难求职之路(1)

一面:(电话 50分钟)

1.js基本数据类型

2.闭包、内存泄漏、垃圾回收算法(闭包概念,用于柯里化、缓存、模块化,导致内存泄漏。垃圾回收有新生代的scavenge和老生代的标记清除)

3.js的原形链、继承,es6的class(本来举例子的,他说不用讲那么多,叫我简单讲怎么继承)

4.移动端了解吗

5.浏览器缓存一套(强制缓存、协商缓存、应用缓存)。url到页面的过程。js、css阻塞页面那些问题,异步加载js(async、defer、动态创建)

6.跨域,同一个一级域名不同二级域名低成本跨域(jsonp、iframe桥接)

7.两个网站的js低成本跨域(iframe)

8.完全的跨域,加上后台的(node转发、jsonp、cors)

9.用vue是吧,说一下虚拟dom

10.说一下vuex(复杂关系的组件,统一的状态管理),再说一下单向数据流(类比react的state),那我子父组件通信呢(事件总线)

11.css布局(除了flex、grid还有吗,我说常用就这两个)那么不兼容呢(用回position、float那些,顺便说一下bfc、ifc)

12.你是怎么学习的,你对你自己的评估怎样,职业规划,为什么不满足你的公司

13.xss、csrf,防御措施

14.说一下pwa(server worker,离线或网速慢的情况下正常运行,依靠本地缓存)

15.评价三大框架(针对ng1的di思想、vue的彻底双绑以及学习成本低、react的数据流,虚拟dom)

16.为什么虚拟dom就快了呢(转化为js数据结构,最小化dom操作,最后render插入)

体验很好,会提前打电话叫我准备一下。移动端比较菜,tap怎么实现没有看,css也比较菜,问题是答上来了但不够好

二面: (电话 40分钟)

1.事件模型,事件委托

2.闭包、内存泄漏、浏览器查内存泄漏的方法

3.document.fragement,重绘、重排

4.如果有操作需要频繁重绘,css重绘优化(GPU加速、节流)

5.面向对象、ES6实现面向对象、promise

6.vue原理

7.跨域(特地把iframe随便带过:还有iframe那套),那iframe父子窗口怎么通信

8.nginx相关、webpack、gulp,有自己写过吗

9.vue ssr,vue如何做多页面应用,知道webpack能配这个吗

10.pwa

11.用node干了什么,mvc+模板引擎,多页面应用

12.项目遇到的难点

13.动画处理,怎么优化,动画卡了怎么办

14.xss、防御措施

腾讯课堂:

一面:(几小时)

陪着他们一起下班,挺好的氛围,第一次感觉到上班像玩游戏一样,时间一下就到晚上11点。

还是常规,笔试再面试,不同的是接着就是漫长的电脑操作。

笔试:写一个函数,给dom加遮罩层、文章里面出现频率最高的、正则匹配属于qq.com的、插入1000个li、手写观察者模式、大数相加

看起来都简单,不过你要是无脑做是必死的,追求极致解和考虑所有的情况以及效率,眼高手低的人在这里是死定的。

面试:

1.继承、类,对类的静态、私有、共有什么看法

2.事件模型、重绘重排

3.http2相关

4.说刚刚做的题,文章最高频率单词那道题,考虑多个结果的优化

5.为什么requestAnimationFrame在插入li那道题是一种优化

6.跨域、哈希值你的应用场景、刷新了怎么办

7.大数相加,考虑到9999那种情况,当场写得代码比较冗余

电脑操作:

1.两个盒子,一个盒子能拖动,拖到另一个盒子里面就变色。这里考到事件委托了。不能用drag事件

2.防抖节流、深拷贝

二面:(视频2小时)

1.聊人生

2.项目的难题,现在重复写一遍(border-radius用canvas实现,而且缩放不能是椭圆,其中一个角还要有阴影。用到微积分)

3.三列布局,想表现自己,挑了圣杯布局来写,而且没写好

4.大数相加,因为上次没写好,这次写了一个厉害很多的版本

5.实现一个像百度那样子的搜索框

6.webpack自己写过插件吗?没。计算机网络了解不,协商缓存、强制缓存

7.时针和分针在5点15分和7点45分的夹角

总监面:(视频 1小时)

1.聊人生

2.写快排。10分钟,完美版本,无错误。

“看看哪里错了?为什么要用草稿本,难道自己写的代码不能看出错误来?”

“还有什么可以优化的吗?”

“执行效率上还有问题吗?”

经过中间n多改进与纠缠。。。留下qq继续战。

又战了两三天,最后结果,左中右3管齐下的快排+中间基准值,测试5000个数4000个重复的情况,结果比数组sort方法还要快。兼顾到数组元素的特性以及长度。我那边还要继续准备毕设。

快手:

一面:(视频 1小时)

1.了解前后端交互吗(restful的api)那怎么传数据(跨域、不跨域情况)跨域怎么跨(cors、jsonp)

2.那jsonp原理呢,返回数据格式呢,手写

3.了解js的自定义事件吗。(有一个api的,我忘记了,然后定义了能用eventlistener监听,类似于发布订阅者模式)

4.那写一个发布订阅者模式(成功把他引入我熟悉的坑)

5.非计算机的,那计算机了解吗,tcp3次握手,如何将一个数转16进制,16进制的数是什么样的

6.看来你还是有了解的,那再问你堆和栈(常量池存基本类型、栈存变量和指针、堆存复杂类型)

7.浏览器缓存

8.写个函数判断是不是回文序列

9.看见你博客,挺有个人独特见解的,你怎么学前端的

二面:(视频1小时)

1.给一个节点树,ul里面可能有ul和li,但li就不会有东西了,判断数的高度

2.用vue是吧,说一下响应式数据原理(balabla)

3.用过slot吗(类似于模态框,可能有警告、提示、成功不同类型,我们只需要做个内容分发避免了写多个组件)

4.cookie、localstorage、sessionstorage区别(大家都知道的)

5.es6的新特性,let和var的区别(let解耦声明和初始化阶段,块级作用域)

6.那好,我const obj = {a: 1};obj.a = 2;这样子会不会报错(基础问题)

7.发散题,怎么判断一个数是不是2的n次方。

8.有什么公司offer

hr面:(20分钟)

1.通过前面俩轮,技术还是过关的,能来到我这里的人不多,说一下你的体验(史上最好,没有之一)

2.你为什么选择我们(社会的热点、boss是大牛)

3.你实习过吧,讲一下之前的经历

4.抛开你的公司和快手,你认为什么样的才是好的工作

5.说一下大学经历。我看见你有数学建模拿奖,说一下

6.对于北快手、南抖音怎么看(从用户群体、用户管理、用户喜好分析)

7.周围的人说快手xx,或者抖音xx,快手不如抖音你怎么办

8.前面面试官给你说过要干什么吗(b端、c端的广告投放)

总监面:40分钟

1.52张牌去掉大小王,分成26*2两堆,从其中一堆取4张牌为4个a的概率

2.3个人分100个金币,第一个人先提出方案,超过半数不同意要死,如果没问题继续下一个人重复步骤,怎么使得第一个人拿到最多

intal360

一面:(电话2小时)

1.怎么学前端,学多久

2.react生命周期,单向数据流

3.vue源码,双向绑定,render、component、mount原理和优先级

4.webpack的spa,为什么选择spa,前端路由原理

5.多页面,glob模块,多页面+单页面

6.父子组件、子孙组件、兄弟组件、无关系组件传值

7.跨域,jsonp原理,内存泄漏,隐形循环引用

8.虚拟dom,domdiff

9.开发环境,docker容器

10.electron相关

11.pwa,service worker,webworker

12.产品迭代更新相关

13.css垂直居中

14.BFC相关

15.node中间层,转发,负载均衡,nginx

16.变量提升的原理

17.es6新特性,用过哪些,原理是什么

18.三大框架的对比

二面:

去公司见老大,对我上次面试特别满意,所以直接谈公司和福利了

hr:

1.什么时候入职

2.有没有女朋友

3.准备在深圳发展吗,为什么选择我们,你对技术栈的要求

4.你高中的数学成绩是不是非常好(没错,一般140)

5.那你物理也很好(没错,一般差不多满分)

6.你偏科很严重(当然)

pundi-pundi

hr面:(20分钟)

1.你为什么选择我们

2.你对技术的追求,你认为什么才是你满意的技术栈

3.你身边的人是怎样的,怎么评价你的

4.你怎么学习前端]

技术面:(50分钟)

1.你的vue商城项目具体结构,逻辑

2.所用到vue全家桶的技术,具体举几个例子

3.那vue-router怎么实现的

4.为什么需要vuex,他是做什么的

5.登录为什么选择session+cookie而不是token

6.pm2、log4js项目用过吗(没有,但是demo玩过),那你觉得他们的作用是什么

7.产品迭代更新注意点、如何设置埋点

8.讲一下懒加载和预加载

9.性能优化,http2,负载均衡

10.什么时候过来,见一下我们老板,再谈一下

一点鸡汤

===============================================================

还有好几个不足150人的小公司前端offer,海投太多名字都忘了很多,中间很多公司面试当天忘记写面经就永远的遗漏了。这些算是当做一次锻炼自己的机会,交流技术查漏补缺。当然不是随便放个屁就跑了,无论怎么选择,都要拿着最好的态度去面对而不是看不起别人,无论你多厉害,也不会厉害到碾压整个公司。

所以说想找好的前端,有发展前景的,当然是有难度的面试。面试什么难度和问题角度,发展前景如何,代表着工资多高、你能学到什么,这些自己心里也有一点x数的。别说那些什么前端要求贼高,现在前端要求什么都会真烦,前端饱和这种话,自己有多少实力,自己清楚,该拿多少,该去哪里。

为了帮助大家更好温习重点知识、更高效的准备面试,把之前看过的资料整理了《前端工程师面试手册》电子稿文件。无偿分享给大家,算是一个感恩回馈吧。

Vue 面试题

1.Vue 双向绑定原理
2.描述下 vue 从初始化页面–修改数据–刷新页面 UI 的过程?
3.你是如何理解 Vue 的响应式系统的?
4.虚拟 DOM 实现原理
5.既然 Vue 通过数据劫持可以精准探测数据变化,为什么还需要虚拟 DOM 进行 diff 检测差异?
6.Vue 中 key 值的作用?
7.Vue 的生命周期
8.Vue 组件间通信有哪些方式?
9.watch、methods 和 computed 的区别?
10.vue 中怎么重置 data?
11.组件中写 name 选项有什么作用?
12.vue-router 有哪些钩子函数?
13.route 和 router 的区别是什么?
14.说一下 Vue 和 React 的认识,做一个简单的对比
15.Vue 的 nextTick 的原理是什么?
16.Vuex 有哪几种属性?
17.vue 首屏加载优化
18.Vue 3.0 有没有过了解?
19.vue-cli 替我们做了哪些工作?

算法

开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】

  1. 冒泡排序
  2. 选择排序
  3. 快速排序
  4. 二叉树查找: 最大值、最小值、固定值
  5. 二叉树遍历
  6. 二叉树的最大深度
  7. 给予链表中的任一节点,把它删除掉
  8. 链表倒叙
  9. 如何判断一个单链表有环
  10. 给定一个有序数组,找出两个数相加为一个目标数

由于篇幅限制小编,pdf文档的详解资料太全面,细节内容实在太多啦,所以只把部分知识点截图出来粗略的介绍,每个小节点里面都有更细化的内容!有需要的程序猿(媛)可以帮忙点赞+评论666

g-pVER4rag-1714655069468)]

算法

开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】

  1. 冒泡排序
  2. 选择排序
  3. 快速排序
  4. 二叉树查找: 最大值、最小值、固定值
  5. 二叉树遍历
  6. 二叉树的最大深度
  7. 给予链表中的任一节点,把它删除掉
  8. 链表倒叙
  9. 如何判断一个单链表有环
  10. 给定一个有序数组,找出两个数相加为一个目标数

    [外链图片转存中…(img-QwptqTwD-1714655069469)]

由于篇幅限制小编,pdf文档的详解资料太全面,细节内容实在太多啦,所以只把部分知识点截图出来粗略的介绍,每个小节点里面都有更细化的内容!有需要的程序猿(媛)可以帮忙点赞+评论666

  • 24
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值