重拾前端技能为你的职业前程保驾护航
前言
最近自己身边有好几个小伙伴由于各种原因(个人,疫情等都有)离职了,但是今年好像都是行情不太好的一年。许多的小公司都倒闭了,大公司也裁员,所以离职的小伙伴好几个都在家待职 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
数据结构
- 堆
- 栈
- 队列
- 链表
- 树
- 集合(并、合、差)
- ...
算法
- 位运算
- 排序
- 链表
- 树
- ...
扩展
ReactNative、Flutter、小程序、Git、Svn...
- Golang语言之defer-再议
- HDUOJ------Lovekey
- 转-带交互的telnet小工具,golang版
- 需要了解的pssh(r11笔记第28天)
- 二分查找算法基本思想
- Flyod 算法(两两之间的最短路径)
- HDUOJ-4104 Discount
- HDUOJ-----1085Holding Bin-Laden Captive!
- HDUOJ-----1098 Ignatius's puzzle
- 转--shell脚本备份mysql数据库
- NYOJ——————数的长度(斯特林公式的应用)
- 关于ssh命令的几个使用小技巧(r11笔记第27天)
- Golang语言社区--消息触发服务器启动基础模块分享
- NYOJ------汉诺塔(一)
- 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 数组属性和方法
- Android获得设备状态信息、Mac地址、IP地址的方法
- Android加载Assets目录中Xml布局文件
- Android系统在shell中的df命令实现
- 面向对象版tab 栏切换案例
- 构造函数和原型
- 解决json中ensure_ascii=False的问题
- Django自定义列表 models字段显示方式
- 无人驾驶环境感知 | 01 车道线检测网络LanNet原理及实现
- 对象存储COS-数据处理能力升级!“组合拳”助力存储新时代!
- 基于python图像处理API的使用示例
- python 的topk算法实例
- android使用viewpager计算偏移量实现选项卡功能
- Android画板开发之撤销反撤销功能
- Android实现复制Assets文件到SD卡
- Android画板开发之添加背景和保存画板内容为图片