TypeScript 官方提供了一份详细的手册,可以作为学习和参考的重要资源。以下是一份简短的 TypeScript 手册指南,帮助你开始学习和使用 TypeScript:

1. 安装 TypeScript:
   首先,确保你的系统中已经安装了 Node.js。然后,通过 npm 安装 TypeScript:
   npm install -g typescript

2. 创建 TypeScript 文件:
   创建一个以 .ts 结尾的 TypeScript 文件,比如 example.ts。

3. 编写 TypeScript 代码:
   在 example.ts 中编写你的 TypeScript 代码。例如:
   function greeter(person: string): string {
       return "Hello, " + person;
   }

   let user = "TypeScript";
   console.log(greeter(user));

4. 编译 TypeScript 代码:
   打开终端,导航到包含你的 TypeScript 文件的目录,并运行以下命令:
   tsc example.ts

   这将会在同一目录下生成一个 example.js 文件,其中包含了转译后的 JavaScript 代码。

5. 类型注解(Type Annotations):
   TypeScript 的强大之处在于它的类型系统。学会如何为变量、函数参数等添加类型注解,以增加代码的可读性和稳健性。
   function add(a: number, b: number): number {
       return a + b;
   }

6. 接口(Interfaces):
   使用接口来定义对象的形状和类型。
   interface Person {
       name: string;
       age: number;
   }

   function greet(person: Person): string {
       return `Hello, ${person.name}!`;
   }

7. 类(Classes):
   TypeScript 支持面向对象编程,学会如何创建类和继承。
   class Animal {
       name: string;

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

       makeSound(): void {
           console.log("Some generic sound");
       }
   }

   class Dog extends Animal {
       makeSound(): void {
           console.log("Bark! Bark!");
       }
   }

8. 泛型(Generics):
   学会如何使用泛型,以增加代码的灵活性。
   function identity<T>(arg: T): T {
       return arg;
   }

   let output = identity<string>("Hello, TypeScript!");

9. 模块(Modules):
   TypeScript 支持模块化开发。了解如何创建和使用模块,以及模块的导入和导出。
   // math.ts
   export function add(a: number, b: number): number {
       return a + b;
   }

   // app.ts
   import { add } from "./math";
   console.log(add(2, 3));

10. 高级类型(Advanced Types):
    掌握 TypeScript 提供的高级类型,比如联合类型、交叉类型、映射类型等。
    type StringOrNumber = string | number;
    type Point = { x: number; y: number };

    function printCoord(coord: Point | null): void {
        if (coord) {
            console.log(`Coordinates: (${coord.x}, ${coord.y})`);
        } else {
            console.log("No coordinates provided.");
        }
    }




转载请注明出处:http://www.zyzy.cn/article/detail/4692/TypeScript