ts使用语法规则

TypeScript(TS)的语法规则主要继承了JavaScript,但由于其提供了静态类型检查以及更丰富的面向对象编程特性,因此在使用上也有一些独特之处。以下是一些TypeScript的基本语法规则:

  1. 变量声明

    TypeScript使用letconstvar来声明变量。其中,letconst是ES6中引入的,提供了块级作用域。const声明的变量是只读的,一旦赋值后就不能再改变。

复制代码

typescript复制代码

|---|----------------------------|
| | let num: number = 10; |
| | const PI: number = 3.14; |

  1. 类型注解

    TypeScript中,可以通过在变量名或函数参数名后面添加冒号:和类型名称来进行类型注解。这有助于在编译时进行类型检查。

复制代码

typescript复制代码

|---|-----------------------------------|
| | let isDone: boolean = false; |
| | let age: number = 25; |
| | let firstName: string = "John"; |

  1. 接口

    接口用于定义对象的类型。它描述了对象应该具有的形状。

复制代码

typescript复制代码

|---|---------------------------------------------------|
| | interface Person { |
| | name: string; |
| | age: number; |
| | greet(): void; |
| | } |
| | |
| | let person: Person = { |
| | name: "Alice", |
| | age: 20, |
| | greet() { |
| | console.log("Hello, my name is " + this.name); |
| | } |
| | }; |

  1. TypeScript支持基于类的面向对象编程。类定义了对象的属性和方法。

复制代码

typescript复制代码

|---|---------------------------------------------------|
| | class Animal { |
| | name: string; |
| | |
| | constructor(name: string) { |
| | this.name = name; |
| | } |
| | |
| | move(): void { |
| | console.log(`${this.name} moves a little.`); |
| | } |
| | } |

  1. 函数

    TypeScript中的函数可以使用类型注解来指定参数和返回值的类型。

复制代码

typescript复制代码

|---|-------------------------------------------|
| | function greet(name: string): string { |
| | return "Hello, " + name; |
| | } |

  1. 访问修饰符

    TypeScript支持使用publicprivateprotected访问修饰符来限制类成员的可访问性。

  2. 枚举

    枚举类型用于定义数值集合。

复制代码

typescript复制代码

|---|------------------------------------|
| | enum Color { Red, Green, Blue } |
| | let c: Color = Color.Green; |

  1. 泛型
    泛型允许在定义函数、接口或类的时候,不预先指定具体的类型,而在使用的时候再指定类型。
  2. 三元运算符和条件(三元)类型
    TypeScript 也支持三元运算符,并允许基于条件的类型推断。
  3. 装饰器
    装饰器是一种特殊类型的声明,它可以被附加到类声明,方法,访问符,属性或参数上。装饰器使用@表达式,后面跟一个装饰器函数。
相关推荐
DreamLife☼1 天前
Agent开发环境搭建完全指南
python·docker·typescript·node·工业知识点
码艺-Alimjan1 天前
Tauri 2.x + Vue 3 桌面应用开发实战:从踩坑到完美落地
前端·javascript·vue.js·rust·typescript·go
大模型丫丫2 天前
用 TypeScript、NestJS 和 LangGraph 搭建一个可控的 AI Agent
javascript·人工智能·typescript
shmily麻瓜小菜鸡2 天前
JavaScript / TypeScript 易踩坑知识点 —— 异步编程类
开发语言·javascript·typescript
妙码生花2 天前
使用git更新ai-go-admin框架
前端·人工智能·git·golang·typescript·php
晴天164 天前
Tsup:TypeScript库打包的“零配置极速方案”
前端·javascript·typescript
shmily麻瓜小菜鸡4 天前
JavaScript / TypeScript 易踩坑知识点 —— 作用域与变量类
开发语言·javascript·typescript