来源:网络
介绍
狭义的来讲,前端指的就是我们常说的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变量存储对应的信息 - 简单介绍一下
三次握手, 和四次挥手的过程
小结
永远记住要多动手,动脑把学到的东西写下来,加深记忆。对自己有好处. 因为多次和阿里的面试官进行了电话面试沟通,所以这些不只是一个面试官提出的问题,而是多个面试官提出的问题。 希望大家能够在闲暇的时间里,将自己的技术不断提高。保持一个虚心学习的状态。