欢迎光临
我们一直在努力

第一章-基础类型

第一章:TypeScript 基础类型

环境配置

在开始使用TypeScript之前,我们需要配置开发环境:

# 安装类型定义
pnpm add @types/node -D

# 全局安装 ts-node
npm i ts-node -g

# 运行 TypeScript 文件
ts-node index.ts

或者使用 bun(自带ts解析器):

# Windows 安装 bun
powershell -c "irm bun.sh/install.ps1|iex"

# macOS 或 Linux 安装 bun
curl -fsSL https://bun.sh/install | bash

# 安装特定版本
curl -fsSL https://bun.sh/install | bash -s "bun-v1.0.0"

# 运行 TypeScript 文件
bun run index.ts

基础类型

TypeScript 提供了以下基础类型:

1. 字符串类型 (string)

let str: string = "string"; // 普通字符串
let str1: string = `string${str}`; // 模板字符串

2. 数字类型 (number)

TypeScript 中的所有数字都是浮点数,支持多种进制表示:

let notNum: number = NaN; // Number.NaN
let num: number = 123; // 普通数字
let num1: number = Number("1"); // 字符串转数字
let hex: number = 0xf00d; // 16进制
let binary: number = 0b1010; // 2进制
let octal: number = 0o744; // 8进制
let big: bigint = 9007199254740991n; // 大整数

3. 布尔类型 (boolean)

let bool: boolean = true; // 布尔值
let bool1: boolean = Boolean(1); // 数字转布尔值

4. null 和 undefined

let n: null = null;
let u: undefined = undefined;

5. Symbol 类型

let sym: symbol = Symbol("sym"); // Symbol类型

6. void 类型

void 表示没有任何返回值的类型:

let v: void = undefined; // 空值类型

function fn(): void {
console.log("void");
}

7. never 类型

never 表示"绝不会有值"的类型,用于表示永远不可能返回的函数:

// void 表示"没有有用返回值" (undefined)
// never 表示"绝对不可能返回任何值" (执行路径不结束)

function ne(): never {
throw new Error("never");
}

8. any 类型

any 表示任意类型,可以赋值给任意类型,也可以接受任意类型的值。开发中应尽量避免使用:

let a: any = "any"; // 任意类型
let a1: any[] = [1, "1", true]; // 任意类型的数组
let a2: {a: any} = {a: 1}; // 任意类型的对象
let a3: any = null; // 任意类型的null
let a4: any = undefined; // 任意类型的undefined
let a5: any = Symbol("any"); // 任意类型的Symbol

9. unknown 类型

unknown 是类型安全的 any,需要进行类型检查才能使用:

let u1: unknown = "unknown"; // 未知类型
let u2: unknown = 1; // 未知类型

// unknown 类型需要进行类型检查
u1.toString(); // 需要类型检查,如果是any不会报错,如果是unknown会报错

类型总结

类型描述使用场景
string 字符串类型 文本数据
number 数字类型 数值计算
boolean 布尔类型 逻辑判断
null 空值类型 表示空值
undefined 未定义类型 表示未定义
symbol 符号类型 创建唯一标识
void 空值类型 无返回值函数
never 永不返回类型 抛出异常或死循环
any 任意类型 避免使用(除非必要)
unknown 未知类型 类型安全的any

注意事项

  • 慎用 any 类型:any 会关闭类型检查,可能导致运行时错误
  • 优先使用 unknown:当需要处理不确定类型时,unknown 比 any 更安全
  • void vs never:void 表示没有返回值,never 表示永远不会返回
  • null 和 undefined:在严格模式下,它们不能赋值给其他类型
  • 赞(0)
    未经允许不得转载:171主机测评 » 第一章-基础类型
    分享到: 更多 (0)

    评论 抢沙发

    • 昵称 (必填)
    • 邮箱 (必填)
    • 网址