zoukankan      html  css  js  c++  java
  • typescript 学习

    一、基本类型

    1、对象声明

    注意: 声明a对象,包含name,和 age 均为string类型,[x:string]:string 表示可能存在其他string类型的属性,需要注意的是:若还有其他类型属性时,需满足条件:

    ① 固定属性为统一类型

    ② 其他属性和需要和固定类型属性类型相同

     ?表示此属性可有可无,规定属性内,不能存在其他属性,如上height为未声明的属性名称

    2、函数声明

    let a: (a:number, b:number) => number;
    
    a = (a: number, b: number) => {
      return a + b;
    }

    函数声明的格式: (参数:类型,参数:类型) => 类型

    let a: (a: number, b?: number, ...args: Array<number>) => void;
    
    a = (a: number, b?: number, c?: number): void => {
      console.log(b?.toFixed());
    };

    需要注意的是:如果想使用b参数,那么只有在该参数存在的情况下才可以使用,如 b?.toFixed()

    3、基本数据声明

    let aa: number | string;
    
    aa = 12;
    aa = 'hello';
    aa = []; // 报错
    
    
    let cc: {name: string} & {age: number}
    
    cc = {name: 'hello', age: 12}

    |符号和&符号的使用: |符号可以使用多个,声明变量可以为多种类型,&符号也可以使用多个,标示属性的合并,如上

    4、数组的声明

    let aa: string[] | number[];
    
    let bb: Array<string> | Array<number>;

    声明方式有两种

    5、枚举

    enum Sex {
      mail,
      femail,
    }
    function pan(sex: Sex): Sex {
      if (sex === Sex.mail) {
        return Sex.mail;
      } else {
        return Sex.femail;
      }
    }

    枚举可以做为一种类型,声明到属性名中

     6、类型别名

    type aa = {
      name: string;
      age: number;
    }
    
    let bb: aa;
    
    bb = {
      name: 'helo',
      age: 12
    }

    定义类型别名,可以使用别名代表后面的一大推代码

  • 相关阅读:
    java-多态
    java-继承
    java-访问修饰符
    mysql基础入门
    子查询
    多表查询
    mysql表(多对多)
    myslql主外键约束
    Sql语句分类
    Redis的一些介绍
  • 原文地址:https://www.cnblogs.com/zhangycun/p/14468131.html
Copyright © 2011-2022 走看看