TypeScript入门 | 青训营笔记

71 阅读2分钟

这是我参与「第四届青训营 」笔记创作活动的第8天

什么是TypeScript

是一个开源的编程语言,通过在JavaScript的基础上添加静态类型定义构建而成。

  • 类型提供一种描述对象形状的方法。可以帮助提供更好的文档。还可以让TypeScript验证你的代码可以正常工作。
  • 在TypeScript中,不是每个地方都需要标注类型,因为类型推断允许您无需编写额外的代码基克尔获得大量功能。
  • Typescript的类型推导意味着只有您希望获得更佳的安全性是,才需要在您的代码中写更多的类型注释。

TypeScript vs JavaScript

  • TypeScript更适合编写应用程序
  • TypeScript跨平台、开源
  • 开始于JS,,结束于JS
  • 重用JS,直接引入JS流行的库
  • 类、接口、模块
  • 在Vue、Node、React中都可以使用TypeScript
  • 强类型限制(JavaScript是弱类型)

语法

数据类型

  • number
  • string
  • boolean
  • null
  • undefined
  • symbol

泛型

interface IX<T,U>{
    key:T;
    val:U;
}
let ix : IX<string,number>= {
    key:'asd',
    val:124
}

函数的定义

function findPerson(age: number): string{
    return '找到了'+ age + ' 岁的人! '
}

var age:number = 18
var result:string = findPerson(age)
console.log( result ) // 找到18岁的人

数组赋值法

字面量复制,构造函数复制,元组。

面向对象编程

类的继承

TypeScript 装饰器

  • 它是一个表达式
  • 该表达式被执行后,返回一个函数
  • 函数的入参分别为 target、name 和 descriptor
  • 执行该函数后,可能返回 descriptor 对象,用于配置 target 对象

 参数装饰器

它接收三个参数:

  • target: Object - 被装饰的类
  • propertyKey: string | symbol - 方法名
  • parameterIndex: number - 方法中参数的索引值

方法装饰器

它接收三个参数:

  • target: Object - 被装饰的类
  • propertyKey: string | symbol - 方法名
  • descriptor: TypePropertyDescript - 属性描述符

属性装饰器

它接收两个参数:

  • target: Object - 被装饰的类
  • propertyKey: string | symbol - 被装饰类的属性名

类装饰器