TypeScript 快速上手

TypeScript是一种由微软开发的开源编程语言,作为JavaScript的超集,提供强类型系统和先进特性。安装TypeScript可使用npm全局安装,然后通过tsc-V检查版本。配置TS程序包括创建.ts文件,使用tsc初始化配置文件tsconfig.json。文章还介绍了类型注解,如布尔值、数字、字符串、数组、元组、枚举、any、void、object、联合类型以及类型断言等基础类型和概念。
摘要由CSDN通过智能技术生成

初识 TypeScript

  • TypeScript是⼀种由微软开发的开源、跨平台的编程语⾔。它是JavaScript的超集,最终会被编译为

JavaScript代码

  • TypeScript 主要有 3 ⼤特点
    • 始于JavaScript,归于JavaScript
    • 强⼤的类型系统
    • 先进的 JavaScript
  • TypeScript 在社区的流⾏度越来越⾼,它⾮常适⽤于⼀些⼤型项⽬,也⾮常适⽤于⼀些基础库,极⼤地帮助我们提升了开发效率和体验。

安装 TypeScript

  • 命令⾏运⾏如下命令,全局安装 TypeScript:
    • npm install -g typescript
    • 安装完成后,在控制台运⾏如下命令,检查安装是否成功(3.x):tsc -V

配置 TS 程序

  • 安装好依赖后可以在项目中直接创建 .ts的文件
    • 在终端 输入 :tsc helloworld.ts 可以执行ts文件
    • 输入 node helloworld.js 可以执行js文件
  • vscode⾃动编译
    • 输入:tsc --init 可以 ⽣成配置⽂件tsconfig.json
    • 解开outDir注释,并且配置,"outDir": "./js"
    • 终端 -> 运⾏任务 -> 显示所有任务->监视-tsconfig.json 后就可以实时更新

TypeScript 程序

  • 类型注解
    • 在属性的后边 :类型 就是 类型的注解 例如: let arr:strign = '123'
  • 基础类型
    • 布尔值(boolean)
      • let isDone: boolean = false
    • 数字(number)
      • let a1: number = 10
    • 字符串(string)
      • let name: strign= 'tom'
    • undefined(undefined) 和 null(null)
    • 数组(Array)
      • 例子1:let list1: number[] = [1, 2, 3]
      • 例子2:let list2: Array<number> = [1, 2, 3]
    • 元组 Tuple()
      • let t1: [string, number] 二元组 固定写法: t1 = ['hello', 10]
    • 枚举(enum)
      • enum Color {

'Red'=0,

'Green'=1,

'Blue'=3

}

let pickColor = Color[0] 可以得到对应的--键

console.log(Color['red']) 可以得到对应键的--值

    • any(在编程阶段还不清楚类型的变量指定⼀个类型)

let notSure: any = 4

notSure = 'maybe a string'

notSure = false // 也可以是个 boolean

    • void(表示没有任何类型, ⼀般⽤来说明函数的返回值不能是undefined和null之外的值)

function fn(): void {

console.log('fn()')

// return undefined

// return null

// return 1 // error

}

    • object( 表示⾮原始类型,也就是除 number,string,boolean之外的类型)

function fn2(obj:object):object {

console.log('fn2()', obj)

return {}

}

    • 联合类型(表示取值可以为多种类型中的⼀种需求)

function toString2(x: number | string) : string {

return x.toString()

}

    • 类型断⾔(通过类型断⾔这种⽅式可以告诉编译器他时什么类型)

⽅式⼀: <类型>值

⽅式⼆: 值 as 类型 tsx中只能⽤这种⽅式

    • 类型推断(TS会在没有明确的指定类型的时候推测出⼀个类型)
      • 定义变量时赋值了, 推断为对应的类型
      • 定义变量时没有赋值, 推断为any类型

类(class)

类是面向对象进行编程的

  • 基本示例

class Greeter {

// 声明属性

message: string

// 构造⽅法

constructor (message: string) {

this.message = message

}

创建类的实例const greeter = new Greeter('world')

调⽤实例的⽅法console.log(greeter.greet())

  • 继承

class Animal {

run (distance: number) {

console.log(`Animal run ${distance}m`)

}}

class Dog extends Animal {

cry () {

console.log('wang! wang!')

}}

const dog = new Dog()

dog.cry()

dog.run(100) // 可以调⽤从⽗中继承得到的⽅法

  • 公共,私有与受保护的修饰符
    • 默认为 public(默认值, 公开的外部也可以访问)
      • 将⼀个成员标记成 public。 我们可以⽤下⾯的⽅式来重写上⾯的 Animal 类
    • private(只能类内部可以访问)
      • 当成员被标记成 private 时,它就不能在声明它的类的外部访问。
    • protected(类内部和⼦类可以访问)
      • protected 修饰符与 private 修饰符的⾏为很相似,但有⼀点不同,protected成员在派⽣类中仍然可以访问。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值