zoukankan      html  css  js  c++  java
  • 2.9interface接口

    interface Person2 {
      //  readonly name: 'string'; // 只读
      name: string;
      age?: number; // 可在可不在
      [propName: string]: any; // 可有其他字符串类型的 下面的直接传入对象里面的sex就不会报错
      say(): string; // 方法
    }
    interface Teacher2 extends Person2 {
      teach(): string;
    }
    // 接口除了可以定义属性方法之外还可以定义函数,还可以定义别克查阅文档
    interface SayHi2 {
      (word: string): string;
    }
    // 来约束函数
    const say2: SayHi2 = (word: string) => {
      return word;
    };
    const getPersonName = (person: Person2): void => {
      console.log(person.name);
    };
    const setPersonName = (person: Teacher2, name: string): void => {
      person.name = name;
    };
    const person2 = {
      name: "dell",
      sex: "male",
      say() {
        return "say hello";
      },
      teach() {
        return "xdcd";
      },
    };
    getPersonName(person2);
    // 此处直接写对象不可,需要用变量先缓存一下
    // getPersonName({
    //   name: 'dell',
    //   sex: 'male',
    // say() {
    //   return "say hello";
    // },
    // })
    setPersonName(person2, "dell");
    // 类可以应用接口
    class User2 implements Person2 {
      name = "dell";
      say() {
        return "dkcmeoc";
      }
    }
    // 接口并不会变成js代码,只是做语法提示用的
  • 相关阅读:
    程序员常用资源工具集合(建议收藏)
    程序员常用资源工具集合(建议收藏)
    16个烧光你脑细胞的悖论
    2.2_模型的选择
    2.1_Scikit-learn数据集
    Sklearn数据集与机器学习
    1.4_数据的特征选择
    1.4_特征的选择
    1.3_数据的特征预处理
    1.2_数据的特征抽取
  • 原文地址:https://www.cnblogs.com/sinceForever/p/14843141.html
Copyright © 2011-2022 走看看