前端语言串讲
-
基础
- HTML
- CSS
- JavaScript
- 浏览器引擎
-
协作
- CSS/JavaScript in HTML
- HTML/CSS in JavaScript
-
HTML
-
标签
- head
- body
-
HTML5
- 语义化
- 存储/音视频
- 浏览器API
- 可视化相关
-
深入理解CSS
-
知识&规范
-
基础
- casading
- 选择器
- 单位和值概述
- 盒模型
-
布局
- 常规流布局
- 弹性盒子
- 网格布局
- 定位
-
Stacking Context
-
变形、过渡、动画
-
-
实践&生态
-
响应式设计
- 媒体查询
- rem方案
- vw方案
- 移动端接口
-
语言增强
- 预处理器
- 后处理器
-
工程架构
- CSS模块化
- CSS in JS
- Atomic CSS
-
深入理解JS
基本概念
-
数据类型
-
对象
- 数组
- 函数
- ...
-
基础类型
- 字符串
- undefined
- 数字
- null
- ...
-
进阶知识点
- 闭包
- this
- 垃圾回收
深入浅出TypeScript
TS VS JS
| JavaScript | TypeScript |
|---|---|
| 一种脚本语言,用于创建动态网页 | JS的超集,用于解决大型项目的代码复杂性 |
| 动态弱类型语言 | 强类型,支持静态和动态类型 |
| 只能在运行时发现错误 | 可以在编译期间发现并纠正错误 |
| 变量可以被赋值成不同类型 | 不允许改变变量的数据类型 |
TS基础
-
基础类型
- boolean、number、string
- undefined、null
- any、unknown、void
- nerver
- 数组类型[]
- 元组类型 tuple
-
函数类型
- TS定义函数类型时要定义输入参数类型和输出类型
- 输入参数:参数支持可选参数和默认参数
- 输出参数:输出可以自动推断,没有返回值时,默认为void类型
- 函数重载:名称相同但参数不同,可以通过重载支持多种类型
-
interface
-
接口是为了定义对象类型
-
特点
- 可选属性:?
- 只读属性:readonly
- 可以描述函数类型
- 可以描述自定义属性
-
-
类
-
增加了public、private、protected修饰符
-
抽象类
- 只能被继承、不能被实例化
- 作为基类,抽象方法必须被子类实现
-
interface约束类,使用implements关键字
-
TS进阶
-
高级类型
- 联合类型 |
- 交叉类型 &
- 类型断言
- 类型别名
-
泛型
- 基础操作符
- 常用工具类型