ts使用语法规则

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

  1. 变量声明 :

    TypeScript使用let、const或var来声明变量。其中,let和const是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支持使用public、private和protected访问修饰符来限制类成员的可访问性。

  2. 枚举 :

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

复制代码

typescript复制代码

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

  1. 泛型 :
    泛型允许在定义函数、接口或类的时候,不预先指定具体的类型,而在使用的时候再指定类型。
  2. 三元运算符和条件(三元)类型 :
    TypeScript 也支持三元运算符,并允许基于条件的类型推断。
  3. 装饰器 :
    装饰器是一种特殊类型的声明,它可以被附加到类声明,方法,访问符,属性或参数上。装饰器使用@表达式,后面跟一个装饰器函数。
相关推荐
FYKJ_20101 小时前
SSM校园失物招领系统41452-计算机课程设计、毕业设计
java·vue.js·spring boot·python·mysql·typescript·spark
tiankongdeyige21 小时前
游戏战斗系统学习第2篇:有限状态机 (FSM)
学习·游戏·typescript
FYKJ_20101 天前
django电影推荐系统55066-计算机课程设计、毕业设计
vue.js·spring boot·python·mysql·typescript·spark·django
进击的明明1 天前
TypeScript速通笔记(下)
前端·面试·typescript
愛芳芳1 天前
element-plus+vite+vue3+pinpa+mock+typeScript搭建经典的电商管理后台
前端·javascript·typescript
miss1 天前
从零做一个可视化规则引擎:Vue3 递归条件树 + 双引擎结果对比
前端·vue.js·typescript
seowmt2 天前
结构化数据和自然语言描述哪个更管用?答案分场景
人工智能·google·typescript·go语言·schema
进击的明明2 天前
TypeScript速通笔记(上)
前端·面试·typescript
Orange_sparkle3 天前
langgraph快速入门
学习·ai·typescript·deepseek·claude code
FYKJ_20103 天前
springboot刑事案件管理系统03047-计算机课程设计、毕业设计
vue.js·spring boot·python·mysql·typescript·spark·django