typescript基本类型
typescript基本类型
基础类型可以开发者更准确地描述数据的结构和意图。
TypeScript 包含的数据类型如下表:
| 类型 | 描述 | 示例 |
|---|---|---|
string | 表示文本数据 | let name: string = "Alice"; |
number | 表示数字,包括整数和浮点数 | let age: number = 30; |
boolean | 表示布尔值 true 或 false | let isDone: boolean = true; |
array | 表示相同类型的元素数组 | let list: number[] = [1, 2, 3]; |
tuple | 表示已知类型和长度的数组 | let person: [string, number] = ["Alice", 30]; |
enum | 定义一组命名常量 | enum Color { Red, Green, Blue }; |
any | 任意类型,不进行类型检查 | let value: any = 42; |
void | 无返回值(常用于函数) | function log(): void {} |
null | 表示空值 | let empty: null = null; |
undefined | 表示未定义 | let undef: undefined = undefined; |
never | 表示不会有返回值 | function error(): never { throw new Error("error"); } |
object | 表示非原始类型 | let obj: object = { name: "Alice" }; |
union | 联合类型,表示可以是多种类型之一 | `let id: string |
unknown | 不确定类型,需类型检查后再使用 | let value: unknown = "Hello"; |
//string字符串
let message:string = "hello,typescript!";
let uname:string = "alice";
let greeting:string = `hello,${uname}! welcome to typescript.`;
console.log(greeting);
//number数字
let age:number=25;
let temperature:number=36.5;
console.log(age, temperature);
//boolean布尔值
//表示逻辑值true或false,用于条件判断。
let isCompleted:boolean=false;
console.log(isCompleted);
//array数组
//可以表示一组相同类型的元素。可以使用type[]或array<type>两种方式表示。
let numbers:number[]=[1,2,3];
let names:Array<string>=["alice","bob"];
console.log(numbers, names);
//tuple元组
//表示已知数量和类型的数组。每个元素可以使不同的类型,适合表示固定结构的数据。
let person:[string,number]=["alice",25];
console.log(person);
//enum枚举
//用来定义一组命名常量。默认情况下枚举的值从0开始递增。
enum Color{
Red,
Green,
Blue,
}
let favoriteColor=Color.Green;
console.log(favoriteColor);
//any类型
// 以表示任何类型。适合不确定数据类型的情况,但使用时需谨慎,因为any会绕过类型检查
// let randomValue: any=42;
// randomValue="hello";
// console.log(randomValue); 运行有问题?
let arrayList: any[]=[1,false,'fine'];
arrayList[1]=100;
console.log(arrayList);
//void空类型
// 用于没有返回值的函数。声明变量时,类型void意味着只能赋值null或undefined
function logMessage(message: string): void{
console.log(message);
}
console.log(logMessage);
//null和undefined
//null和undefined分别表示空值和未定义。在默认情况下,
//它们是所有类型的子类型,但可以通过设置strictNullChecks严格检查
let empty: null=null;
let notAssigned: undefined=undefined;
console.log(empty, notAssigned);
//object对象类型
//表示非原始类型的值,适用于复杂的对象解构
let personB: object={name:"alice",age:30};
console.log(personB);
//union联合类型
//表示一个变量可以使多种类型之一。通过|符号实现
let id: string |number;
id="123";
id=456;
console.log(id);
//unknown不确定的类型
//与any类似,但更严格。必须经过类型检查后才能赋值给其他类型变量
let messageB:string = "hello,typescript!";
let value: unknown="hello ts3!";
if(typeof value==="string"){
let messageB: string=value;
}
console.log(messageB);
//type assertions .类型断言
//类型断言可以让开发者明确告诉编译器变量的类型,常用于无法推断的情况
//可以使用as或<>语法
let someValue: any="this is a string";//加空格一起16个字符
let strLength: number=(someValue as string).length;
console.log(someValue, strLength);
//字面量类型
//字面量类型可以让变量只能拥有特定的值,用于结合联合类型定义变量的特定状态
let direction="up" | "down" | "left" | "right"; //字符串之间要写空格,不写空格,会报错误
direction="up";
console.log(direction);编译运行:

通过这些类型,TypeScript 提供了更强的类型安全性和代码检查能力,使开发者能够更清晰、准确地表达数据和意图,减少运行时错误。
吐槽一下


还没有留言,还不快点抢沙发?