zoukankan      html  css  js  c++  java
  • typescript 类型注意事项

    类型

    声明类型string表示字符串,而String表示String对象

    null undefined 是所有类型的子类型

    任意值

    声明一个变量为任意值any之后,对它的任何操作,返回的内容的类型都是任意值

    变量如果在声明的时候,未指定其类型,那么它会被识别为任意值类型

    如果定义的时候没有赋值,不管之后有没有赋值,都会被推断成 any 类型而完全不被类型检查

    给变量设置默认值且不设置类型,会触发类型推论

    联合类型

    当 TypeScript 不确定一个联合类型的变量到底是哪个类型的时候,我们只能访问此联合类型的所有类型里共有的属性或方法

    接口

    赋值的时候,变量的形状必须和接口的形状保持一致

    可选属性

    任意属性[propName: string]: any

    数组

    数组的项中不允许出现其他的类型 any[]

    函数的类型

    在 TypeScript 的类型定义中,=> 用来表示函数的定义,左边是输入类型,需要用括号括起来,右边是输出类型。

    
    let mySum: (x: number, y: number) => number = function (x: number, y: number): number {
        return x + y;
    };
    
    

    可选参数 ?表示,可选参数后面不允许再出现必须参数了

    
    function buildName(firstName: string, lastName?: string) {}
    
    

    参数默认值 TypeScript 会将添加了默认值的参数识别为可选参数, 且不受可选参数后面不允许再出现必须参数了的限制

    剩余参数 ...rest 为一个数组,可以声明

    
    function push(array: any[], ...items: any[]) {}
    
    

    类型断言

    类型断言的用法,在需要断言的变量前加上 即可。

    类型断言不是类型转换,断言成一个联合类型中不存在的类型是不允许的

  • 相关阅读:
    $NOIP2018$赛道修建
    $NOIP2005$过河
    $NOIP2014$飞扬的小鸟
    $[SCOI2014]$方伯伯的玉米田
    大吉大利,晚上吃鸡!
    $HNOI2005$星际贸易
    $CF1142B$ $Lynyrd Skynyrd$
    $SDOI2015$排序
    $NOIP2003$侦探推理
    Build 2016概览
  • 原文地址:https://www.cnblogs.com/goOtter/p/10647275.html
Copyright © 2011-2022 走看看