typescript基本操作整理

56 阅读2分钟

1. TypeScript简介

TypeScript是JavaScript的一个超集,添加了静态类型、类、接口等特性。它最终会编译成纯JavaScript代码,因此可以在任何支持JavaScript的环境中运行。TypeScript的主要目标是提供更好的开发体验,包括代码补全、类型检查、重构等。

2. 安装TypeScript

npm install -g typescript

3. 基本类型

  • 布尔值
let isDone: boolean = false;
  • 数字
let decimal: number = 6; // 十进制 
let hex: number = 0xf00d; // 十六进制
let binary: number = 0b1010; // 二进制
let octal: number = 0o744; // 八进制
  • 字符串
let color: string = "blue";
color = 'red';
  • 数组
let list: number[] = [1, 2, 3];
let list: Array<number> = [1, 2, 3];
  • 元组
let x: [string, number] = ["jiang", 10];
  • 枚举
enum Color {Red, Green, Blue}
let c: Color = Color.Green;
  • 任意类型

当你不确定一个变量具体是什么类型时,可以使用any类型:

let notSure: any = 4;
notSure = "我是字符串";// 字符串
notSure = false; // 布尔值
  • 空值
let u: undefined = undefined;
let n: null = null;
  • void类型

通常用于表示没有返回值的函数:

function sayHello(): void {
    console.log("hello, jiang");
}
  • Never类型

如果一个函数永远不会返回(例如,它可能抛出异常或进入一个无限循环),那么可以将其返回类型标注为 never

function error(message: string): never {
    throw new Error(message);
}

4. 接口

接口定义了一个对象的结构,可以用来定义类型。

interface Person {
    name: string;
    age: number;
}

let tom: Person = {
    name: "Jiang",
    age: 24
};

5. 类

TypeScript支持面向对象的编程模式,包括类、继承等特性。

class Animal {
    name: string;

    constructor(theName: string) { this.name = theName; }

    move(distanceInMeters: number = 0) {
        console.log(`${this.name} 走了 ${distanceInMeters}米.`);
    }
}

class Dog extends Animal {
    bark() {
        console.log('汪!');
    }
}

let dog = new Dog("dogA");
dogA.bark();
dogA.move(10);
dogA.name = "dogB";

6. 函数

TypeScript中的函数与JavaScript中的非常相似,区别是你可以给参数和返回值指定类型

function greeter(person: string): string {
    return "Hello, " + person;
}

7. 编译TypeScript

你可以使用tsc命令来编译TypeScript文件。例如,如果你有一个名为app.ts的TypeScript文件,你可以这样编译它:

tsc app.ts

这会生成一个名为app.js的JavaScript文件。然后用node app.js运行即可

image.png

最后

下次见🎈