Skip to content

Ts

强数据类型

  • let num:number=0在变量后面使用:加类型进行声明

  • typescript sum(x:number,y:number):number{ return x+y; }

interface接口

  • 对象的类型声明

  • interface描述了对象应该具有的属性和方法(接口),但并不提供实现细节。

  • ```ts interface Person {//声明类型 name: string; age: number; greet(): void; }

    const person: Person = {//声明具体的数值(直接把接口看作一种数据类型) name: "John", age: 30, greet() { console.log(Hello, my name is ${this.name} and I'm ${this.age} years old.); } };

    ```

  • 与类的关系

  • 接口(interface):

    • 用于描述对象的结构和类型,定义了对象应该具有的属性和方法,但没有具体的实现。
    • 接口可以被多个类实现,一个类可以实现多个接口。
    • 接口可以用于类型检查和约束,确保对象符合特定的结构和行为要求。
    • 接口不会被编译为 JavaScript 代码,它仅存在于 TypeScript 的类型系统中。
  • 类(class):

    • 用于创建对象的模板,可以定义对象的属性、方法和行为。
    • 类可以实例化为具体的对象,通过 new 关键字进行创建。
    • 类可以拥有构造函数、实例方法、静态方法、属性等。
    • 类可以继承其他类,并添加自己的属性和方法。
    • 类的实例化对象可以被直接使用和操作。
  • 将类关联到接口(约束)

    • 使用implement关键字

    • ``` interface Animal { name: string; sound(): void; }

    class Dog implements Animal { name: string;

      constructor(name: string) {
          this.name = name;
      }
    
      sound(): void {
          console.log("Woof!");
      }
    

    } ```

  • 使用接口

    • 直接使用实例化的对象来使用(接口只是一种规范(类型))