Typescript学习记录

本文详细介绍了JavaScript中构造函数的定义及其使用规范,探讨了迭代器与生成器的概念及应用场景,并对比了for...in与for...of循环的区别,旨在帮助读者深入理解JavaScript的关键特性。
  1. 构造函数:只能有一个,且命名为constructor
  2. 迭代器和生成器
    for…in: 迭代对象的键
    for…of: 迭代对象的键对应的值
  3. 模块
    内部模块:命名空间;外部模块:模块
### Typescript 学习资料与教程 #### 1. 类型系统与基本概念 TypeScript 的类型系统是其核心特性之一。在日常开发中,`number`、`string` 和 `boolean` 是常见的基础类型声明[^1]。这些类型通常以小写形式使用,而非大写的 `Number`、`String` 或 `Boolean`,后者主要用于创建包装对象,在实际开发中较少使用。 此外,TypeScript 支持类型兼容性。例如,`number` 类型可以作为 `number|string` 类型的子类型进行赋值操作[^2]。这种灵活性使得 TypeScript 在处理复杂数据结构时更加便捷。 #### 2. 接口与类型定义 接口(Interface)是 TypeScript 中用于描述对象或函数结构的重要工具。通过接口,开发者可以为变量定义清晰的结构约束[^3]。例如: ```typescript interface ISumFunc { (x: number, y: number): number; } const sum: ISumFunc = (x, y) => { return x + y; }; ``` 需要注意的是,接口无法直接描述传统 `function` 关键字声明的函数类型,仍需使用传统方式定义。 #### 3. 类型推断 TypeScript 的类型推断功能能够自动识别变量的类型,减少显式类型声明的需求[^4]。例如: ```typescript let num = 2; // 类型推断为 number console.log("num 变量的值为 " + num); // 编译错误:类型不匹配 num = "12"; ``` 类型推断不仅提高了代码的简洁性,还能够在潜在错误发生前提供编译期检查。 #### 4. 面向对象编程与继承 TypeScript 支持面向对象编程的核心特性,如类(Class)、继承(Inheritance)和接口(Interface)。通过继承,子类可以扩展父类的功能,同时也可以实现多态[^5]。例如: ```typescript class Door { open() { console.log("门已打开"); } } class SecurityDoor extends Door { alarm() { console.log("防盗门报警!"); } } ``` 此外,接口可以用来提取公共行为,使不同类之间共享相同的特性。例如: ```typescript interface Alarm { alarm(): void; } class Car implements Alarm { alarm() { console.log("汽车报警!"); } } ``` #### 5. 学习资源推荐 以下是几种常见的 TypeScript 学习资源: - **官方文档**:TypeScript 官方文档是最权威的学习资料,涵盖了从基础到高级的所有内容。 - **在线教程**:如 MDN Web Docs 和 TypeScript Handbook 提供了详细的讲解和示例。 - **视频课程**:平台如 Bilibili、YouTube 上有许多免费的 TypeScript 入门与进阶课程。 - **书籍**:《TypeScript Deep Dive》是一本经典的开源书籍,适合希望深入理解 TypeScript 的开发者。 --- ###
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

anneCoder

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值