重拾前端技能为你的职业前程保驾护航
前言
最近自己身边有好几个小伙伴由于各种原因(个人,疫情等都有)离职了,但是今年好像都是行情不太好的一年。许多的小公司都倒闭了,大公司也裁员,所以离职的小伙伴好几个都在家待职 1-3 个月。由于自己身边的小伙伴当前处于这样一种状况,在职(活在舒适区)的我也有了一点危机感。于是自己整理里一份前端清单来巩固自己的前端知识,以便差缺补漏。
基础篇
前端入门必知-结构、表现、行为。
HTML - 结构
超文本标记语言(英语:HyperText Markup Language,简称:HTML)是一种用于创建网页的标准标记语言。HTML是一种基础技术,常与CSS、JavaScript一起被众多网站用于设计网页、网页应用程序以及移动应用程序的用户界面。网页浏览器可以读取HTML文件,并将其渲染成可视化网页。HTML描述了一个网站的结构语义随着线索的呈现,使之成为一种标记语言而非编程语言。(摘自维基百科)
HTML
常见面试题(比较多列举部分):
- DOCTYPE 的作用是什么?
- 你是如何理解语义化的?
- meta viewport 的作用?
- 你用过哪些 HTML 5 标签?
- 行内元素、块级元素以及空元素都有哪些(列举)?
- ...
CSS - 表现
层叠样式表(英语:Cascading Style Sheets,缩写:CSS;又称串样式列表、级联样式表、串接样式表、阶层式样式表)是一种用来为结构化文档(如HTML文档或XML应用)添加样式(字体、间距和颜色等)的计算机语言,由W3C定义和维护。(摘自维基百科)
CSS
相关的面试题(比较多列举部分):
- 盒子模型
- CSS权重如何计算?
- 栅栏布局
- 让一个元素上下左右居中
- 清除浮动的方式
- 什么是BFC,如何解决?
- CSS3动画系列
- ...
JavaScript - 行为
JavaScript(通常缩写为JS)是一种高级的、解释型的编程语言。JavaScript是一门基于原型、函数先行的语言,是一门多范式的语言,它支持面向对象程序设计,命令式编程,以及函数式编程。(摘自维基百科)
JavaScript
相关的面试题(比较多列举部分):
- 数据类型?
- 值传递和引用传递?
- 实现继承的几种方式?(几种继承方式的区别)
- 类型转换
- this 问题
- 闭包
- 深浅拷贝
- 原型
- ...
基础进阶篇
ES6
ECMAScript 6.0(以下简称 ES6)是 JavaScript 语言的标准。
ES6
相关的知识点:
- var、let、const
- 新增的数组、对象方法
- promise
- Class
- Proxy
- async await
- Generator
- ...
TypeScript
JavaScript的严格超集。(简称:TS)
TypeScript
相关的知识点:
- 和 JavaScript 的区别
- TS 特性和优点、缺点
- 数据类型
- 接口
- T类
- 装饰器
- TSD
- Declare
- 泛型
- ...
Sass/Less/Stylus
CSS 预处理器:用一种专门的编程语言,为CSS增加了一些编程的特性,将CSS作为目标生成文件,然后开发者就只要使用这种语言进行编码工作。通俗的说,CSS预处理器用一种专门的编程语言,进行Web页面样式设计,然后再编译成正常的CSS文件,以供项目使用。CSS预处理器为CSS增加一些编程的特性,无需考虑浏览器的兼容性问题,例如你可以在CSS中使用变量、简单的逻辑程序、函数等等在编程语言中的一些基本特性,可以让你的CSS更加简洁、适应性更强、可读性更佳,更易于代码的维护等诸多好处。
框架篇
前端三驾马车
React.js
一个用于构建用户界面的 JavaScript 库。
React.js
相关的知识点:
- 生命周期
- 通信(父子组件,兄弟组件,跨多层)
- HOC 和 mixins
- Hooks
- 事件机制
- diff 原理
- redux
- ...
Vue.js
渐进式 JavaScript 框架
Vue.js
相关的知识点:
- 生命周期
- 通信(父子组件,兄弟组件,跨多层)
- extend
- mixin 和 mixins
- computed 和 watch
- keep-alive
- v-show 与 v-if
- 响应式原理
- NextTick
- Vuex
- diff
- Vue 3
- ...
Angular
一款优秀的前端JS框架,已经被用于Google的多款产品当中。AngularJS有着诸多特性,最为核心的是:MVC(Model–view–controller)、模块化、自动化双向数据绑定、语义化标签、依赖注入等等。
(由于个人学习使用 Angular 的时候还是 1 和 2 版本,如今版本差异太大,此处暂时不做总结举例)
工具篇
打包工具
- Webpack
- gulp
- grunt
- rollup
- Parcel
- ...
测试工具
- Mocha
- Jest
- Chai
- ...
网络协议、数据结构、算法等
网络协议
- UDP
- TCP
- HTTP
- HTTP/2
数据结构
- 堆
- 栈
- 队列
- 链表
- 树
- 集合(并、合、差)
- ...
算法
- 位运算
- 排序
- 链表
- 树
- ...
扩展
Nodejs、ReactNative、Flutter、小程序、Git、Svn...
【技术创作101训练营】
- 摸金Redis漏洞
- 机器人越来越像人,你会担心你的工作被人工智能取代吗?
- 一句代码实现批量数据绑定[上篇]
- 机器学习-从高频号码中预测出快递送餐与广告骚扰
- MS Windows 下基于Atom的LaTeX编译环境的配置
- WCF中的Binding模型之一: Binding模型简介
- WCF中的Binding模型之一: Binding模型简介
- 2017最火的五篇深度学习论文 总有一篇适合你
- SplashScreenSource的妙用
- SplashScreenSource的妙用
- SplashScreenSource的妙用
- Nodejs学习笔记(十七)--- 浮点运算decimal.js
- AI时代让自己幸福更是一种能力
- 持续不断地推荐儿童不宜视频背后,YouTube是这样训练AI的
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- MySQL Galera Cluster全解析 Part 9 监控Galera Cluster
- redis的介绍及安装
- 使用oradebug捕获SQL语句
- MySQL information_schema详解 PROCESSLIST
- MySQL组复制(MGR)全解析 Part 6 监控MySQL组复制
- 代码审计day2
- 使用XtraBackup备份MySQL 8.0 Part 8 xtrabackup 命令总结
- 代码审计day5
- 使用innobackupex对数据库进行部分备份(指定表或数据库)
- 使用Django获取Linux性能数据并存放在redis中
- MySQL组复制(MGR)全解析 Part 5 MGR单主模式部署指南
- php学习day4
- 使用Python爬取动态网页-腾讯动漫(Selenium)
- MySQL 5.7 常用命令
- MySQL复制全解析 Part 5 MySQL GTID的格式和存储