Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

多益网络 #1

Open
MrWeilian opened this issue Feb 19, 2019 · 0 comments
Open

多益网络 #1

MrWeilian opened this issue Feb 19, 2019 · 0 comments

Comments

@MrWeilian
Copy link
Owner

MrWeilian commented Feb 19, 2019

总的来说多益网络的这次的考察,主要是一个前端的上限吧,也就是前端的天花板知识,这也反映出来了自己的很多不足,日后还要继续加强学习~

第一轮是笔试,印象中的题目

1.垂直水平居中的方法。
2. var a="a123",b="b234";不调用其他变量交换值。(我用的是解构赋值,不知道对不对)
[a,b] = [b,a]
3.正则表达式匹配邮箱。
4.写一个es5规范的继承
5.三个基于promise的异步函数,写一个A→B→C调用的代码,依次执行。
我用的是async。
6.长度超过10000且类型是number的数组args,求最大值。(我用的是冒泡排序的方法的第一层)
7.写对http的理解和http的底层实现。
8.2道关于闭包和输出考察题目,涉及for循环中的let和相关闭包考察。
9.关于event loop的考察。写出一段script代码+setTimeout+promise.then的输出顺序,并写明原理
10.除了压缩代码,合并文件,提出优化网站首屏显示速度的方法。
(这里手贱写了http2,结果面试官就深入考察,自己坑自己)
11.写vue的双向绑定原理和依赖收集的实现。
12.原生js实现一个前端路由。(比较简单吧,理好逻辑就行,hashchange)


总的来说笔试难度一般般吧,有点js基础的基本没什么问题

接着是面试了

面试是2个面试官来面试,我估计应该是一个前端一个后端吧,当时没问,考察的知识比较...开始总结吧哈哈

1.一开始主要是针对我的项目开始问我的,我做过的项目,优缺点有什么,实现什么功能,有什么开发难点,然后他现场给我提需求,叫我提供解决思路。(项目回答得还行)
2.问了vue的数据驱动原理,并且在set之后vue会做了什么。(答得一般)
3.vue的组件通信,$emit是怎么实现的,如果用原生js怎么实现。(只会第一问,后面不会)
4.浏览器缓存有什么,分别讲下强缓存和协商缓存。(这个回答得半斤八两吧,年前看过相关的文章,面试前没复习,那些设置的头部的忘记了)
5.问了了解什么安全知识,分别讲下。回答了xss和csrf。接着问csrf中文名是什么,攻击者怎么实现攻击,应该怎么防范。(也回答得一般,怎么实现攻击的自己也不太了解,大概说了一下嵌套iframe模拟点击按钮点击吧)
6.看到你这里写着http2,说一下http2对于优化的优势。我答多路复用,浏览器加载就不会限制在6条请求里,可以多资源加载。接着问我底层是怎么实现多路复用的。(emmm... 不会)
7.数据结构的相关,问了二叉树是怎么样的,怎么用js实现一个二叉树。
8.问了我一些算法的原理,时间复杂度。
9.https和http的区别是什么。我答了,接着问tcp和tls的过程是怎么样的。为什么要三次握手。为什么要四次挥手。四次挥手多出来的一次是什么。(问道后面就不太会了)
10.对称加密和非对称加密是什么,有什么区别。什么时候要用非对称和对称。怎么保证防止中间人攻击。https的证书是怎么工作原理的。(emmm...不会)


emmm,总体来说,面试正确回答率的话只有50%左右。。。然后面试官也很赏脸说可以培养,把我放进了终面

终面是个技术主管,问的技术层面的不多。依稀记得就问了js自己是怎么实现异步的,还有一道算法题。主要是讨论了很多人生方面的,探讨了我女朋友,和我的未来规划。

最后成功拿offer啦,我会继续努力的~
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant