ts
装饰器原理与继承的区别
继承概念 先举例子说明继承的概念:
假设张三想买车,他的父亲有辆奔驰,那么他爸把车送他,这叫继承。
装饰器的概念
假设张三有奔驰了,但是想换个轮毂,想换个方向盘,通过他兄弟的贴补,换了套新的套件。
小结
因此继承属于父子集关系,父可限定私有属性,以及 protected…
ts typeof推断隐式类型及应用场景
1.应用场景一 假设某函数获取obj和key两个参数
Copy
function getObj(obj:object,key:string){
return obj[key]
}
存在的问题key不一定属于obj上的索引,因此存在风险。
因此需要讲key断言为obj上类型…
ts断言奇技淫巧
1.当要求自己实现类型提取时,假设要提取Goose中name,age属性会想到以下方法: Copy
type Gooose={
name:string
age:number
getCuurent:()=>void
}
type FilterObj<T,U>={
[P…
ts泛型条件匹配
当有需求要求根据传入类型匹配对对应类型时,实现如下: Copy
type Expample=string
type C<T>=T extends Example?string:boolean
const res:C<string | number>=true
const…
ts实现在索引中自定义签名
约束一个类型中,假设规定了其他固定类型,要求用户传递其他规范时增加约束,比如,key 以 End 结尾。 Copy
type C={
name:string
[key:`${string}End`]:string | number
age?:number
}
//即…
ts实现各种类型工具
类型工具的实现