记一次酷狗前端社招面经

•首先是看了我的简历,让我讲一个比较有意思的项目
(我就选择了一个h5sdk的项目做了具体的讲解
①谈到了一些iframe的父子页面跨域通信。
②前端和ios客户端通过postMessage的交互原理,还有一些交互逻辑的处理。
③也谈到了ajax,get和post的区别,还有一些对于敏感信息的转码。
④还问了我这个项目的用户量有多少、使用情况怎么样的等等。)

•进入http环节。问了一些关于http1.1的特性的。https和http的区别,具体讲述一下https。
(我就说多了个ssl层。ssl层是通过客户端发送ssl版本和加密组件。服务器接受了之后,也会发送一个ssl版本,挑选加密组件内容并且会发送一个包含公开密钥的证书...客户端根据公开密钥加密一个随机密码串(用于形成对称加密)并且会发送一个报文,提示服务器接下来的通信会用这个密码串加密。服务器接收到再用私钥解密)

•对称加密和非对称加密是什么,有什么区别?
(对称加密就是大家都有一把共同的密钥来建立通信。非对称加密就是服务器把自己的公钥公布出来,但是只能用自己的私钥才能进行解密。却别就是非对称加密每次都要做解密的算法,对机器的消耗和时间都比对称加密的大。

•怎么处理这种情况?
(我就说两者相结合。就像我刚才说的ssl的握手一样,用非对称加密传输一个两者的密钥,接下来就用这个密钥进行通信。

•那你这样怎么保证传输的密钥的安全呢,会不会被篡改呢?
(我就说这就要使用一个证书。用一个安全可靠的第三方来保证传输密钥的安全,具体我也说了一下证书的由来..)

•https的耗时都比http长,怎么避免这个问题?什么时候用https?等等

•http的缓存,强缓存和弱缓存有什么区别?他们的一些请求头和响应头是怎么样的?强缓存命中的时候,请求回返回什么样的状态码?
(emmm大概讲述了一下吧。一些请求头什么的,因为怎么读我也不确定,怎么拼只记得大概,就说了一下。也提到了ETag和Modified,优先级是ETag。然后强缓存是不发送请求,协商缓存需要发送请求给服务器,服务器如果返回304,即不会带实体内容...强缓存命中的状态码是200。会有一个from memory cache 或者disk cache。)

•接着面试官手写了一个for循环和setTimeout的考题给我,是考察关于闭包的,问我相关的输出是什么??怎么达到他想要的效果(采用闭包,let,setTimeout的第三个参数...)
•讲述一下闭包是什么?
•手写了一个链式调用 Mask('jack').sleep(5).**()。问我每次函数结束后要返回什么?
•一个异步加载的元素,你需要获取他并绑定事件,怎么确定你一定能绑定到。知道事件绑定的原理吗?
•promise和setTimeout有什么区别,他们怎么执行,什么是宏任务什么是微任务,执行顺序又是怎么样的?
•讲一下js的原型,原型链。讲一下js的继承方式。
•对vue的生命周期钩子了解吗,用哪个用得最多,用来做什么处理,为什么要在这一步做这一种处理。
•讲一下vue2.0的虚拟dom,还有vue怎么实现数组的数据驱动。
•看到你这个播放器的项目,讲述一下他的整体,有哪些功能,哪些界面。
•播放器的进度条怎么实现的,讲讲你的思路。
•播放器有做过歌词吗,是怎么样实现的。
•有做过什么动画吗?有用过canvas做动画吗?
•svg有用过吗,用来做了什么,使用js控制的吗?
•如果一个用户打开了你的网页发现打不开,你说说可能出现的情况,你想到的都可以说。
•我基本上问完了,你有什么问题问我的吗?
#前端工程师##社招##面经##酷狗#
全部评论
感觉问的还挺多的
点赞
送花
回复
分享
发布于 2020-04-22 12:34
1面还是2面?
点赞
送花
回复
分享
发布于 2020-05-19 15:27
网易互娱
校招火热招聘中
官网直投

相关推荐

头像
不愿透露姓名的神秘牛友
04-11 03:04
已编辑
国核湛江核电 运行 推送里写的本科生年包20w 本科985
点赞 评论 收藏
转发
6 19 评论
分享
牛客网
牛客企业服务