前端面试题

2019年09月18日 06:34:38

关于cookie,跨域、对象原型、http,都问了问题从浅到深涉及的面很广,需要认真准备下才能回答的比较完整。


腾讯, 蚂蚁金服, Lazada, Shopee, 有赞 等 。



腾讯的技术笔试非常基础,两张纸,一般二十分钟就做完了,主要考察一些js基础,包括但不限于:


CSS


盒子模型

BFC,Flex

变量类型


JS 的数据类型分类和判断

值类型和引用类型

原型与原型链


原型和原型链定义

继承

作用域和闭包


执行上下文

this

闭包

性能问题


比如为什么要用事件委托,原理是上面

为什么Dom 操作就慢了, 解释一下

看程序写输出

框架相关


简历上没写就不问, 写了你要答出个所以然, 原理什么的要清楚, 仅仅会用API是不行的。

都是一些很基础的考察, 但是如果写错太多, 也很容易就凉了。


事件循环, Promise, setTimeout/setInterval, React setState 是如何实现的, 原理等。

Vue defineReactive 方法是如何实现全局状态更新的, 依赖是如何收集的。

语言的词法分析和语法分析 和 浏览器的html parse 有什么区别, 浏览器具体是如何解析的, 为什么标签不闭合浏览器也能正常处理, 能怎么实现,

C++ 里没有settimeout, 既然没有, 要实现的话,用线程如何实现。

Html5 新特性

requestAnimationFrame 是做什么的, 如果写个 Node.js 的C++ 扩展, 怎么去优化requestAnimationFrame ?

Dns 具体是如何解析的?

1 有没有 toString, Number(1) 有没有, '1' 有没有, 为什么

react diff

虚拟DOM

react 新旧生命周期

为啥有新生命周期 , 这两个可以参考我的另一篇文章中,关于 Fiber 和生命周期的介绍

事件传播

Event loop

Obj getter setter


一面完了之后, 会有相应的评价, 二面面试官会针对性的考察。


腾讯的面试官就很喜欢问 HTTP(1.x, 2.0, HTTPS), 安全, 浏览器缓存 方面的问题, 计算机基础,但是要懂为什么。


比如:


HTTP 有什么缺点

HTTP2 有什么好处

HTTPS 有什么好处, 有什么缺点,为什么。

TCP, UDP 的区别

为什么说HTTPS 是安全的, 解释一下加密过程(就非对称加密, 密钥交换那一套)。

三次握手的过程,为什么握手三次, 为什么挥手四次

安全相关(XSS & CSRF) (高频)

浏览器缓存策略(高频)

缓存头相关

浏览器 Cookie 相关。

常见的跨域问题及解决方案

常见的安全问题(csrf,点击劫持, 等等)

输入URL 到页面展示发生了什么(超高频)

性能优化策略(结合上一条, 高频)。

基础的数据结构和算法(比如快排,merge sort, N sum, Top N 等, 手写代码)

事件循环原理, 看题写输出, 解释一下。

一些常用的方法, 比如debounce, throttle, new, create, bind 的实现。

promise, 异步的处理。

基础的算法和数据结构(Tree, BFS, DFS)


- 简单自我介绍

- 问你做的项目

- 遇到什么问题

- 排查问题的方法

- Https 的优势

- Https 连接的过程(证书, 非对称加密的过程,加密算法等)


一般到了这里就问题不大了, 当然也有翻车的。 这一步主要就是看:


问项目


做了什么

哪些地方比较出彩, 有什么成果

这里我建议实现画个思维导图来梳理, 有计划的突出重点, 自己做的好的,多做准备。

看你的沟通能力

有些会问你一些智力题,也有人回问数学题(比如矩阵乘法)等, 考察是否聪明.

会python 吗?(腾讯)

简述Https 连接的过程(还是非对称加密那一套的流程)(腾讯)

这一步, 总监觉得你OK, 就会放你到HR。



这一步, 如果是正常的HR, 会问你:


过去的一些经历,做过啥

为什么离职 (权衡稳定性)

对工资的期望


这一步不要虚, 毕竟你都走到这了, 怕啥。这里谈钱不伤感情, 千万不要:


不要急于出价


可以先套路一波

给你多少就要多少


一旦你说出一个薪酬范围,自己就不能增加薪酬了

谈一次被打击一次,最后越来越没有底气。


自信一些, 此条面对阿里的HR时, 请自行斟酌。

也不要漫天要价, 自己值多少钱, 心里(能没个B数?)要有点数, 不知道的,要去脉脉上问下。可以适当加多点:


一方面是留点砍价的空间

另一方面, 万一HR就答应了呢, 那不就美滋滋。

对于已经谈拢的薪酬待遇,一定要 HR 以发邮件 offer 的形式来确认。

你前面拿的一些肉鸡公司的offer 可以作为加价的筹码, 不要扔了。


持续学习


面试官还会看你平时的积累, 比如技术博客有没有常更新, 写的都是啥,持续学习很重要。

关注下产品


前端是有义务参与产品的设计的。

关注下业务


阿里的leader 会考察你对产品和业务的了解情况。

技术特别牛逼的,自行斟酌。

要有某个突出的点(或技术, 或产品, 或对业务的理解)。

Comments


    © 2019 power by Kacoro, Inc.

    500x500