typesript 阮一峰笔记阅读整理

TypeScript 笔记

  typescript 虽然加大了工作量,但是可以降低后期维护成本,可以做到代码即文档。

 TypeScript上手第一步

  1. 安装
     npm install -g typescript
  2. 编译一个ts文件
     tsc hello.ts
  3. 推荐使用编辑器VScode
     http://code.vusyalstudio.com/

 基本声明类型

  1. 在变量后面使用:(类型)即可 如下
    • let a : string = "abc"
  2. 空值
    • js中没有空值的概念,在ts中,void可以表示没有任何返回的函数
    • 声明一个void变量没有什么用,因为他只能是undefined和null
  3. 任意值      
    • 声明了类型就不允许该变量拥有其他类型的值,这时候就需要一个任意变量类型
    • 声明一个任意值之后,对他任何操作返回的都是任意值
    • 如果一个变量未被声明类型,那么他的类型就是任意值
  4. 类型推论  
    • ts会在没有明确声明的时候推测一个类型
  5. 联合类型
    • 可以使用|进行多个类型声明
  6. 对象类型 --- 接口
    • interface Person{ name:string };  let a : Person ={ name:"abc" } 
    • interface会声明一个接口,然后这个接口可以定义对象里面的值跟类型
    • 这里声明几个属性,就只能写几个属性,多了就会报错。
    • 如果希望接口有一个未定义的属性就可以写[propName:string]:any来声明可以有一个未声明属性的存在
    • 如果想定义一个可有可无的属性那么可以写age?:number
    • 那么这个属性就可有可无,不是必要的属性
    • 如果想定义一个不可被修改的只读属性可以使用 readonly id: number 来定义
  7. 数组类型
    • 数组的声明类型跟基本类型用法一样,也可以用接口表示
    • 一般数组就给一个any是最常用的
    • 其他不常用的就见官网讲解吧= =
  8. 函数类型
    • 参数定义类型,并且传参的时候不可以传递多余的参数
    • 参数定义了就是必填的,要么就定义可选参数或者用扩展运算接收参数
    • 扩展运算符也是要定义类型的,一般用any即可
    • function sum():number   这里是return的数据类型
  9. 类型断言
    • 断言可以手动指定一个值的类型。
    • 写法: 值 as 类型。
    • 我。。。这个东西写起来好复杂,去阮一峰文档看吧,一两句说不清楚,要想写下去估计我得复制很多东西。
    • 一般解决ts中应该不报错却报错了的问题,不常用。
  10. 声明文件
    • 断言可以手动指定一个值的类型。
    • 写法: 值 as 类型。
原文地址:https://www.cnblogs.com/lrqcx/p/13034146.html