一个合格的前端开发需要那些知识储备?
前端专业技能储备
前端开发工程师牵涉的知识范围是非常广的,特别是随着 Nodejs 的出现,使得 JavaScript 开发者面临着前所未有的知识荒原等待着我们去开阔。
下面我列举一些在前端工程师的专业技能问题。而这些问题是作为前端开发工程师必须去深入学习的问题,就像英语学习中的单词记忆一样重要。下面列举我认为比较重要的知识点:
- JavaScript 相关
- 原型链与作用域
- 闭包
- 模块化(amd/cmd/umd/ES6 module)
- 跨域多种方式,如 jsonp
- JavaScript 中的 this 指向问题
- CORS
- AJAX 的几种状态,ajax与fetch,hijax
- iframe 与 onload 阻塞主页面
- 前端安全与 CSRF,XSS,SQL注入,DDOS
- JS 异步加载
- IE 内存泄露
- JS 创建对象的几种方式
- JS 继承的几种方式与优缺点
- SEO
- ES6 新特性
- promise 与 generator
- 服务器推
- jQuery 相关
- 捕获与冒泡
- drag 和 drop 实现拖拽
- cookie/session/本地存储
- 雅虎网站优化的军规
- CSS 与 JS 的阻塞加载
- Chrome / IE 浏览器事件兼容
- CSS 相关
- 垂直水平居中
- 盒模型
- 浮动与定位
- 排版引擎与 JS 引擎
- GPU 加速与动画性能
- DOM1,DOM2,DOM3 规范
- CSS 性能
- h 标签与 title 标签
- em 与百分比等
- 浏览器缓存与应用缓存
- div 与 table 布局
- Web 标准
- CSS 的 hack 技术
- png/jpg/webp 图片格式
- canvas 与 svg
- CSS3 的新特性,如 flex 布局等
- 响应式布局
- link 与 import 区别
- 三栏自适应
- b 和 strong,i 和 em 区别
- 减少页面回流
- BFC
- 硬件加速与动画优化
- 前端自动化相关
- webpack 相关
- webpack-dev-server 相关
- 单页面打包工具+多页面打包工具
- babel 相关
- 其他知识
- http/1.1 与 http2
- http 三次握手协议
- http 状态码
- JSON 与 XML
- 前端性能优化
- nodejs/npm 相关内容
- 算法
- 几种排序算法
- 回文字符
- 递归(很重要)
- 其他常见的前端算法