当前位置: 首页 > news >正文

Ts-入门

TypeScript 是 JavaScript 的一个超集,支持 ECMAScript 6 标准,它是在程序编译时进行类型校验的。

一.常见基本类型

二.基本结构

1.变量声明

推荐使用let和const

let age: number = 25; const pai: number = 3.14;

2.函数声明

函数声明:TypeScript 允许声明带有类型注解的函数,包括参数类型和返回值类型。

const getData(id:string) :string=>{ 'id'+id }

3.类声明

class dataList ={ name:string; age:number; constructor(name: string, age: number) { this.name = name; this.age = age; } }

4.接口声明与类型别名

//接口(Interface):用于描述对象的形状,接口可以继承和扩展。 interface Animal { name: string; age: number; makeSound(): void; } //类型别名(允许为对象类型、联合类型、交叉类型等定义别名。) type ID = string | number|null

5.类型断言

Ts无法准确识别变量类型时,通过断言来强制转换变量类型

let id: unknown = '11111111'; const data: string[] = getdata(id as string)

6.泛型

泛型允许在定义函数、接口或类时不指定具体类型,而是使用占位符,让用户在使用时传入具体类型。泛型能够增加代码的复用性和类型安全性。

function identity<T>(arg: T): T { return arg; } 1.不明确传入类型,隐式泛型(自动推断类型) let data =identity('hai') //T:string let dataArry =identity([1,2,3]) //T:number[] 2.明确传入T类型 let data =identity<string>('hai') let dataArry =identity<number[]>([1,2,3])

7.类型守卫

TypeScript 提供了类型守卫(如 typeof 和 instanceof),用于在运行时缩小变量的类型范围。

function isString(value: any): value is string { return typeof value === 'string'; } value = 1 -false value= "hai" - true
http://www.jsqmd.com/news/102538/

相关文章:

  • 提升用户体验的关键一步:使用EmotiVoice增强语音交互
  • 15、SNMP信息收集与NET - SNMP使用指南
  • Firmware Extractor:一站式Android固件镜像提取解决方案
  • EmotiVoice是否提供预训练模型下载?获取方式汇总
  • 16、SNMP监控信息收集与插件使用指南
  • 17、Nagios通知系统:全面解析与实践指南
  • 11、本地资源测试:Nagios插件的详细指南
  • 12、本地资源监控工具介绍
  • 13、Nagios插件测试与执行全解析
  • 14、监控利器:NRPE与SNMP使用指南
  • 零基础学网安创新?8 大方向 + 学习路径(超详细),入门到精通看这篇
  • 11、量子计算架构:从比特到可逆门的深入探索
  • LobeChat与Elasticsearch集成:实现对话历史全文检索
  • 以为是高薪风口?网安薪资断崖式下跌,现实版围城让人破防
  • 12、量子门全面解析:原理、应用与限制
  • 宁波O型圈哪家好?2025专业O型圈定制厂家精选名录 - 栗子测评
  • O型圈厂家推荐指南-2025实力O型圈工厂口碑排行 - 栗子测评
  • 挖到宝了!2025 网安 200 万缺口,零基础→年薪 50W 路径全公开
  • 13、量子算法:从 Deutsch 算法到 Deutsch–Jozsa 算法
  • 封神!网络工程 VS 网络安全:区别、就业方向、薪资差,选岗不迷茫
  • 酷播云API的调用示例(代码)
  • 密封件哪家好?2025全国优质密封件厂家实力排行榜 - 栗子测评
  • 密封件定制厂家哪家靠谱?2025优质密封件工厂推荐榜单 - 栗子测评
  • 2025年12月江苏新沂树池品牌顶尖企业综合评估报告 - 2025年品牌推荐榜
  • LobeChat召回营销活动文案
  • LobeChat功能更新提醒推送
  • LobeChat情感分析插件设想:识别用户情绪并智能回应
  • EmotiVoice在教育领域的应用:打造会‘共情’的教学助手
  • EmotiVoice支持多说话人切换吗?功能验证结果
  • EmotiVoice能否实现跨语种情感迁移?初步实验结果