浅入深出TypeScript

48 阅读2分钟

安装

要使用TypeScript,首先需要在本地安装TypeScript编译器。可以使用npm包管理器来安装TypeScript:

npm install -g typescript

在安装完成后,可以使用tsc命令来编译TypeScript文件。

基本类型

在TypeScript中,有一些基本类型,包括numberstringbooleannullundefined。可以使用这些类型来声明变量和函数参数的类型。

let age: number = 30;
let name: string = "John";
let isStudent: boolean = true;
let someValue: null = null;
let anotherValue: undefined = undefined;

接口

接口是一种定义对象结构的方式。可以使用接口来定义对象的属性和方法,并在需要时引用它们。

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

let person: Person = {
  name: "John",
  age: 30
};

TypeScript支持类和面向对象编程的概念。可以使用class关键字来定义类,并使用constructor方法来初始化类的属性。

class Person {
  name: string;
  age: number;

  constructor(name: string, age: number) {
    this.name = name;
    this.age = age;
  }

  sayHello() {
    console.log(`Hello, my name is ${this.name} and I'm ${this.age} years old.`);
  }
}

let person = new Person("John", 30);
person.sayHello(); // Output: "Hello, my name is John and I'm 30 years old."

泛型

泛型是一种允许在编写代码时指定类型的工具。可以使用泛型来编写更通用和可重用的代码。

function identity<T>(arg: T): T {
  return arg;
}

let value = identity("Hello");
console.log(value); // Output: "Hello"

类型注释

可以使用类型注释来为变量、函数参数和函数返回类型添加类型信息。

function add(a: number, b: number): number {
  return a + b;
}

let result: number = add(1, 2);
console.log(result); // Output: 3

类型别名

可以使用类型别名来为复杂类型创建更简洁的名称。

type Name = string;
type Age = number;

interface Person {
  name: Name;
  age: Age;
}

let person: Person = {
  name: "John",
  age: 30
};

声明文件

TypeScript可以通过声明文件来支持在JavaScript中使用TypeScript代码。声明文件是一种以.d.ts为扩展名的文件,其中包含对JavaScript代码中使用的TypeScript类型和接口的定义。

declare function add(a: number, b: number): number;

let result = add(1, 2);
console.log(result); // Output: 3

这些是一些TypeScript的基础知识,可以帮助你快速入门。要深入了解TypeScript,请阅读TypeScript官方文档。