腾讯前端社招面试经历
一面
1、大致介绍一下你的前端项目经历;
2、如何使低版本的浏览器支持新的语言特性?
3、JS为什么是单线程?这样做有什么好处是多线程语言无法实现的?
4、项目中有使用过react 和vue 那么请比较说明一下两者的优劣;
5、vue是如何实现数据的双向绑定的?
6、react中的单向数据流动有什么好处?
7、对框架源码的熟悉程度 react向一个位于很深节点的子组件传值,除了props还有没有别的方法?
8、简单说明一下你对ES6中箭头函数的理解
9、跨域问题:如何解决跨域问题?设置请求头应该如何设置?那么服务器返回的报文的响应头中有什么不一样的地方?
10、讲一下TCP三次握手的过程,输入一个url到页面呈现到浏览器上的全过程
11、怎样以对象为构造函数创建一个对象
12、使用过webpack吗?讲一下插件(plugin)和loader的区别
13、关于js为什么是单线程?操作系统的线程和进程
二面
1、这次没有自我介绍,上来就让你介绍一下你的前端学习经历,参与过哪些项目?
2、你觉得你做的这个项目比较出彩的点在哪里?
3、你使用到了cookie,讲一下你具体的使用方法
4、你把cookie存在浏览器端,那么如果有人恶意获取到了你的cookie,他就可以登录你的账号,你怎么解决这个问题?
5、具体怎么实现,不谈加密的方法,你说说你要对哪些数据对象进行加密。那么如果他获取了你加密的cookie一样可以继续实现登录,问题依然存在,再给你5分钟思考一下。
6、那么下一个问题,你讲一下dns解析的具体过程,比如对 www.qq.com 进行解析。dns是基于哪个协议的?
7、你谈到你有用过vue,说一下双向数据绑定是如何实现的。
8、那么model层的数据变化可以被监听到并更新到view层,如果是view层的数据变化要怎么去更新model层呢?
9、讲一下vue中的组件传值,父子组件和组件间的传值方法
10、说一下xss,针对这个问题你如何解决,具体方法。
11、SQL注入你知道嘛,这个问题你要怎么解决?
12、this的指向问题。
13、你有用过es6、es7你觉得他们的特点是什么?
14、利用apply手写一个bind函数, bind函数返回的是一个什么东西?
15、如何用js实现两个大数相加,会有哪些问题,如何解决?
#面经##社招##腾讯##前端工程师#