【阿里前端面试点】目标,想成为一名好的前端工程师
来源:网络
介绍
狭义的来讲,前端指的就是我们常说的html, css, javascript. 三者必不可缺. 而其中涵盖的知识点不可一篇文章就能完整的讲述出来的。广义的定位,涉及到浏览器,手机App里面的用户交互展示的内容,都属于前端。
知识点
- HTML
- CSS 布局(流式布局, 栅格布局,弹性布局)
- CSS 过渡及动画, 继承与特殊性
- LESS, SASS, PostCSS
- JavaScript
- Node.js 工具,服务,部署
- 浏览器/手机调试, 抓包工具(JSFiddle, Charles, Whistle)
- 手机适配, 优化策略
- Chrome Debug DevTool 使用
- Canvas, SVG 的原理及
- HTTP, HTTPS, HTTP 2.0 协议
- React, Vue.js 框架原理
前端问题
- 介绍一下ES5的
defineProperty
- 设置
enumerable: true
后,如何获取可枚举的key - 设置
enumerable: false
后, 什么样的方式检测key存在与对象中 - 简单介绍下
盒模型
,以及flexbox
弹性布局 CSS3
有哪些新特性HTML5
有哪些新特性及API- 描述一下
HTTP
协议缓存机制 Canvas
的实现原理前端跨域
解决方式有哪些Cookie
,session
, 本地存储Ajax
的工作流程throttle
与debounce
的使用场景事件委托机制
以及实现方式- 简单介绍一下函数
闭包
- 导致内存泄露的有哪些
- 简单介绍一下原型链的实现方式
- 如何实现预加载,懒加载
框架问题
MVVM
的双向绑定原理是什么- 如何更优雅的实现
双向绑定
Vue.js
的computed
计算属性的实现Vue.js
组件之间数据通信的方式有哪些 (vuex, 父子通信)proxy
数据代理的实现vue-router
的实现机制是什么
ES6问题
let
,const
块作用域如何被转化的. 如果自己转化,请介绍下你的实现方法箭头函数的作用域上下文
和普通函数作用域上下文
的区别ES6
模块加载机制- 介绍下
ES6
的新特性给你带来了哪些变化
打包工具问题
- 简单介绍下
webpack
的工作原理 webpack
的基本配置有哪些grunt
,gulp
,webpack
三者的区别
Node.js 问题
require
的模块系统加载方式是什么npm
包管理工具介绍, 如何写一个npm
模块setTimeout, setImmediate, nextTick
三种定时器的区别Promise
,Generator
,Async/Await
三者的关联pm2
,forever
模块的工作原理express
,koa
框架的区别Node.js
核心模块有哪些Node.js
多进程部署的原理
测试问题
- 前端单元自动化测试框架有哪些 (mocha, jasmine, qUnit)
- 持续集成, 集成测试的意义
BDD
和TDD
的区别Node.js
和前端
的调试方式
额外知识
websocket
工作原理, 以及建立连接方式https, http2.0
知识介绍git
命令的使用, 介绍一下git flow
工作流- 有一个
192.168.0.1
的 IP, 如何使用一个Int变量存储对应的信息 - 简单介绍一下
三次握手
, 和四次挥手
的过程
小结
永远记住要多动手,动脑把学到的东西写下来,加深记忆。对自己有好处. 因为多次和阿里的面试官进行了电话面试沟通,所以这些不只是一个面试官提出的问题,而是多个面试官提出的问题。 希望大家能够在闲暇的时间里,将自己的技术不断提高。保持一个虚心学习的状态。