当前位置: 首页 > Web前端 > vue.js

两年经验面试阿里前端开发岗,已拿offer,这些知识点该放出来了

时间:2023-03-31 18:09:30 vue.js

面试阿里前端开发岗位两年经验,已经收到offer,这些知识点应该放出来聊完,要简历,说只有两年经验,结果老板说,没关系,他喜欢底子好,让我试试看,所以我也抱着试试看的心态发了简历。简历投出后,老板给我打电话,让我简单介绍一下自己,我就噼里啪啦说了一些,还说了一些题外话。然后老板开始问我问题。由于四轮面试,初面的记忆有些模糊。电话面试1.说说你对CSS盒模型的了解。2、说说box-sizing的应用场景。3.说说你知道的灵活的FLEX布局。4.说说一个不知道宽高的元素是如何垂直上下左右居中的。5.说说原型链、对象、构造函数之间的一些联系。6.绑定DOM事件的几种方式7.说说你的项目中使用的技术栈,以及你感到自豪和突出的点,以及让你头疼的点,以及如何解决的。8、你知道http2.0、websocket、https吗?说说你的理解和你知道的特点。第一轮电面试大概50分钟,我也只记得这么多了。还有一些细节可能已经忘记了。一般来说,面试主要是看基础。正式的招聘流程。技术轮,这次直接省略自我介绍。1.没看懂如何配置webpack的入口文件,如何划分多个入口等。2.看到你的项目使用了一个Babel插件:transform-runtime和stage-2。说说它们的功能。3、我看到你的webpack配置使用了插件webpack.optimize.UglifyJsPlugin,有没有感觉压缩速度很慢,有什么办法可以提高速度。4、我在你的简历上看到你懂http协议。说说200和304的理解和区别5.DOM事件中target和currentTarget的区别6.说说你们平时是怎么解决跨域问题的。以及后续JSONP的原理和实现以及如何设置cors。7.说说深拷贝的实现原理。8.说说你认为项目中可以改进的地方,以及你做得好的地方?最后,我问是否有什么我需要问的。面试到这里基本就结束了。大约一个小时后,我还是很累。总的来说,回答的广度、深度和细节都还可以,感觉这一轮面试基本没有悬念。第二轮技术面试后没几天,就接到了阿里另一位面试官的电话。最后一轮面试通过了。这次是第二轮技术面试,大概一个小时。这次还是略过自我介绍之类的,直奔主题。1、你自己写过webpackloader吗,原理什么的,记不太清了。2、是否研究过webpack的一些原理和机制,如何实现的?3、babel将ES6转ES5或ES3的原理是什么?你研究过吗?4.大型git项目团队合作,持续集成。5.什么是函数柯里化?并告诉我函数柯里化的实现应用了哪些JSAPI?6.ES6的箭头函数这个问题,以及扩展运算符。7、JS模块化Commonjs、UMD、CMD规范的理解,以及ES6模块化与其他类型的区别,以及出现的意义。8、说说Vue的双向数据绑定原理,以及vue.js和react.js的异同。如果让你选择一个框架,你如何权衡这两个框架?我们来分析一下。9.看到你也写了一篇博客,讲一下稿件的交互细节和实现原理。最后面试官问我有没有什么问题。面试到这里基本就结束了,大概用了一个小时。三轮的技术表现,感觉自己没有前两轮发挥好,还是有点不自信。没想到过了第三天就打电话通知我去阿里校区面试。第一面试官1.首先自我介绍,说说项目的技术栈,项目中遇到的一些问题。2、一个业务场景,面对不断的产品迭代,如何应对需求的变化,具体技术方案的实施。具体的业务场景我就不一一描述了。老大在白板上画了一个大概的模块图,然后做了一些需求描述。然后我们需要一层层改,再往下挖,主要考察对付产品的能力,以及代码的可维护性和可扩展性。对于开放式问题,我认为也考察了一些沟通技巧。因为有些地方,面试官故意说得很含糊。反正就是综合能力和对产品的理解。中间说了怎么实现,也问了一些具体点。记得多问几句。①如何获取元素到视图顶部的距离。②getBoundingClientRect获取的top和offsetTop获取的top的区别③事件委托给第二个面试官1.业务场景:比如百度的一个服务不想让阿里使用。如果识别出是阿里的请求,那就跳404或者拒绝服务什么的?2、如何求二分查找的时间复杂度,是多少?3、什么是XSS,攻击原理,如何防范。4.线性顺序存储结构和链式存储结构有什么区别?以及优缺点。5、分析手机日历、PC日历和桌面日历的一些区别和需要注意的地方。6.把代码写在白板上,用最简洁的代码实现数组的去重。7、草稿、多端同步、冲突问题如何实现?总结第一面的时候,其实觉得自己回答的不是很好。当时就觉得这个答案要凉了。幸运的是,我通过了。在准备面试之前,我对自己的要求是尽量不要很快被题目压垮,所以我重点复习了自己擅长的知识,去网上刷了很多阿里面试题,做了个整理。现在分享给大家,算是感谢反馈。ReactREACT全家桶引入Redux,主要解决什么问题?数据流是什么样的?如何管理使用相同状态的多个组件?React-Redux连接到React组件。什么是Redux中间件?它接受几个参数。redux请求中间件如何处理Redux中的并发异步请求?如何配置React-Routerreact-router如何实现路由切换?BrowserRouter作为路由器...您在哪些浏览器上测试了HTML和CSS页面?这些浏览器的核心是什么?每个HTML文件的开头都有一个很重要的东西,Doctype,你知道这是干什么用的吗?什么是怪癖模式?它和标准模式有什么区别?div+css布局相比table布局有什么优势?img的alt和title有什么异同?strong和em的异同点?你能描述一下渐进增强和优雅降级之间的区别吗?为什么利用多个域存储网站资源效率更高?请谈谈您对网络标准和标准制定组织的重要性的理解。请描述cookies、sessionStorage和localStorage的区别?JavaScriptJQuery一个对象可以同时绑定多个事件,这是如何实现的?你知道什么是webkit吗?你知道如何使用浏览器工具调试调试代码吗?如何测试前端代码?你知道BDD、TDD、单元测试吗?你知道如何测试你的前端项目(mocha、sinon、jasmin、qUnit..)吗?前端模板(小胡子、下划线、车把)有什么作用以及如何使用它?简单介绍下Handlebars的基本用法?简述Handlerbars对模板的基本处理流程,如何编译?它是如何缓存的?用js实现千位分隔符?检测浏览器版本的方法有哪些?我们同时给一个dom绑定两个点击事件,一个用捕获,一个用冒泡。告诉你事件会执行多少次,然后是先执行冒泡还是捕获,实现一个函数clone,可以用在JavaScript中5中如何通过复制值来消除数组中的重复元素主要数据类型(包括Number、String、Object、Array、Boolean)?HTML5和CSS3CSS3有哪些新特性?html5有哪些新特性,去掉了哪些元素?如何处理HTML5新标签页的浏览器兼容性问题?如何区分HTML和HTML5?本地存储(LocalStorage)和cookies(存储在用户本地终端的数据)有什么区别?如何在浏览器中实现多个选项卡之间的通信?如何优化网站的文件和资源?什么是响应式设计?什么是新的HTML5文档类型和字符集?HTML5Canvas元素的用途是什么?HTML5存储类型之间有什么区别?