TypeScript 数据类型
TypeScript 常量 

TypeScript 变量

TypeScript 是 JavaScript 的一个超集,它在 JavaScript 的基础上添加了类型系统,这使得开发者可以在编译时检查类型错误,从而提高代码的可维护性和稳定性。在 TypeScript 中,变量的声明和 JavaScript 类似,但可以指定变量的类型。

基本类型声明:

let message: string = "Hello, TypeScript!";
let age: number = 25;
let isStudent: boolean = true;
let list: number[] = [1, 2, 3];

对象类型声明:

let person: { name: string; age: number } = { name: "Alice", age: 30 };

任意类型:

使用 any 类型可以声明一个变量,它可以接受任何类型的值。

let notSure: any = 4;
notSure = "Maybe a string instead";
notSure = false; // okay, definitely a boolean

元组类型:

元组类型允许表示一个固定长度的数组,其中每个元素的类型可以不同。

let x: [string, number] = ["hello", 10]; // OK

枚举类型:

枚举是一种特殊的类型,可以为一组数值赋予更易读的名字。

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

void 类型:

void 类型通常用作没有返回值的函数的返回类型。

function warnUser(): void {
    console.log("This is my warning message");
}

null 和 undefined 类型:

TypeScript 将 null 和 undefined 作为所有类型的子类型。

let u: undefined = undefined;
let n: null = null;

never 类型:

never 类型表示那些位置不会被执行到或者一定会抛出异常的位置。

function error(message: string): never {
    throw new Error(message);
}

类型别名:

使用 type 关键字可以为类型创建一个新的名称。

type Name = string;
type Clickable = HTMLButtonElement;

接口:

接口是一种强大的方式来定义对象的结构。

interface Person {
   name: string;
   age: number;
}

联合类型:

联合类型表示一个值可以是几种类型之一。

let value: string | number;
value = "Hello"; // OK
value = 123; // OK

类型守卫:

类型守卫是一种运行时检查,用于判断一个变量是否属于特定的类型。

function isNumber(x: any): x is number {
   return typeof x === "number";
}

这些是 TypeScript 中变量声明的一些基本概念。通过使用 TypeScript,你可以在开发过程中获得更好的类型检查和代码编辑器支持。