Files
Notebook-StarNet/aboutTS.md
T

38 lines
1.2 KiB
Markdown

# 以下是关于 ts(以及任何关于 ts 的不限于语法,技巧之类的学习心得)
## any unknown void never
- any 表示任意类型。这导致不会对类型进行任何检查,用太多不太好就是了。
- unknown 表示位置类型。看作any的安全版本。可以赋值为任何类型,但在使用之前必须进行类型检查或类型断言。
- void 代表没有返回值。
- never 代表永远不会有任何返回值,如死循环或抛出异常。
## 接口 interface
- 基本可以认为是声明object类型用的东西
## 泛型 <T>
- 实际上可以理解为是一种类型的变量
- 如:
```ts
function identity<T>(arg: T): T {
return arg
}
// 使用泛型函数
let result = identity<string>('Hello')
console.log(result) // 输出: Hello
let numberResult = identity<number>(42)
console.log(numberResult) // 输出: 42
// 基本语法
interface Pair<T, U> {
first: T
second: U
}
// 使用泛型接口
let pair: Pair<string, number> = { first: 'hello', second: 42 }
console.log(pair) // 输出: { first: 'hello', second: 42 }
```