TypeScript全解:深入对象与函数(上)

深入对象索引签名(Index Signature)我们已经很熟悉了 12345678type Hash = { [key: stirng]: unknown; length: number;}type List { [key: number]: unknown; length: number;} 映射类型(M...

Read More

TypeScript全解:类型兼容

为什么要兼容? 因为实际工作中,往往无法类型一致 假设我们现在需要设计一个接受参数为 一个对象包涵3个属性 的函数,但实际数据缺拥有更多属性,我们很容易写出以下代码: 1234567const data = { a: 1, b: 2, c: 3, d: 4}const newData = lodash.pick(data, [&#x...

Read More

TypeScript全解:交叉类型

交叉类型(Intersection Types)(交集)1type A = string & number 很显然 A 的结果是 never,因为字符串和数字是两种完全不同的东西,所以一般交叉类型,我们不会用在普通类上 12345678type 有左手的人 = { left: string;}type 有右手的人 = ...

Read More

TypeScript全解:联合类型

JS 可以对值进行加减运算如果把 TS 的类型系统的当作一门语言,TS 可以对类型进行各种运算吗?如果有,那么 TS 类型系统有那些运算呢? 联合类型(union type)(也叫做并集)栗子🌰1234type A1 = number;type B1 = string;type C1 = A1 | B1;const c1: C1 = 42; 上述代码...

Read More

TypeScript全解:类型(下)

何时用enum类型当前端遇到这种需求的时候: 前端需要显示后端返回的状态 1,2,3,4,还要传输这个值回去, 但是我们经常会忘记这个值是什么意思,这个时候就可以使用 enum 🌰:二进制权限 1234567891011121314151617enum Permission { None = 0, Read = 1 << 0,...

Read More

TypeScript全解:类型(上)

JS/TS 中有哪些数据(data)类型(type) JS null, undefined, string, number, boolean, bigint, symbol, obejct(含 Array、Function、Date…) TS 以上所有,加上 void, never, enum, unknown, any,再加上自定义类型 ty...

Read More

TypeScript全解:起手

类型擦除如何运行 TypeScript 用一张图就可以说明 如何运行一段 JS 代码(图左),只需要放进 Chrome 或者 Node 中即可 但是如果只加了一点类型 number,再放进 Chrome 或者 Node 则会报错,所以我们需要把 ts 变成 js,然后再运行 ,这个过程就叫做类型擦除。 如何进行类型擦除 npm i -g esbu...

Read More

技术重视

人们总是在短期高估技术在长期低估技术 你是一个技术人员,你会长期的高估技术吗? 即使是技术人人员本身也是这样,短期学点技术就能赚点钱,长期来说也是非常低估的,我为什么要搞十年二十年技术,我肯定要在三十岁转管理,说明技术人员并不重视技术 很多搞技术的人开始进入公司以后,就不怎么搞技术了,更愿意重视人际关系,怎么转管理,怎么搞业务,一个表现就是一年看不完一本...

Read More

JS 数组真强大

其实 JS 的数组可以玩的很花,但是很多人没有发现(不管你会不会,在我面前都属于不了解) 先来看5个简单的 api1234567891011121314151617181920212223242526272829const a = []a.push(1)// 1Wa.push(2)// 2a.push(100, 200)// 4a.pop()// 200...

Read More

git常用命令

常用命令拉取代码1git clone xxx.git 创建分支12345git branch dev# orgit checkout -b dev# orgit switch -c dev 切换本地分支123git checkout dev# orgit switch dev 切换分支并关联远程分支123git checkout -b dev or...

Read More