2024-12-31 手写PromiseA+ 实现 Promise 是异步编程的一种解决方案,比传统的解决方案——回调函数和事件——更合理和更强大。它由社区最早提出和实现,ES6 将其写进了语言标准,统一了用法,原生提供了Promise对象。 阅读全文…
2024-11-24 git reset 和 git revert的区别 git reset 和 git revert的区别在 Git 中,git reset 和 git revert 是两个常见且功能强大的命令。它们都可以撤销更改,但适用场景和操作方式截然不同。 阅读全文…
2024-10-19 TypeScript-5.0装饰器 装饰器TypeScript 装饰器是一种特殊的声明,可以附加到类声明、方法、属性或参数上。它允许开发者在不修改原有代码的情况下,对类和它的成员进行额外的功能。它就像是在代码的外面包了一层,使得代码可以有更多的功能,而不用重复写同样的逻辑。装饰器本质上是一个函数,在运行时被调用,并接受被装饰的元素作为参数。 阅读全文…
2024-09-07 TypeScript-声明文件 声明文件TypeScript 声明文件(.d.ts)是用来描述 JavaScript 库或模块的类型信息的文件。它告诉 TypeScript 编译器,这些库或模块中的变量、函数、类等具有什么样的类型,从而使我们在使用这些库时能够获得类型检查和代码补全等功能,提高开发效率和代码质量。 阅读全文…
2024-08-17 TypeScript-模块和命名空间 模块和命名空间TypeScript 提供了两种主要的代码组织方式:模块(Modules)和命名空间(Namespaces)。它们都用于组织和管理代码,但有不同的用途和特性。 阅读全文…
2024-07-20 TypeScript-unknown类型 unknown类型unknown 类型是 TypeScript 3.0 引入的一种类型,用于表示未知类型。与 any 类型类似,它可以赋值给任何类型的变量,但与 any 不同的是,unknown 类型更安全,因为它强制在使用之前进行类型检查。 阅读全文…
2024-06-23 TypeScript-条件类型 条件类型条件类型是 TypeScript 提供的一种基于条件的类型选择机制,可以根据类型的真假条件来进行类型推导和分配。这种功能使得 TypeScript 更加灵活和强大,能够处理复杂的类型逻辑。例如 A extends B ? C : D 。 阅读全文…
2024-05-25 TypeScript-类型保护 类型保护在 TypeScript 中,类型保护(Type Guards)通过在运行时检查变量的类型,可以在特定的代码块中自动识别变量的属性和方法,从而确保代码的类型安全,提示并规避不合法的操作。 阅读全文…
2024-04-27 TypeScript-交叉类型 交叉类型在 TypeScript 中,交叉类型(Intersection Types)是一种非常有用的类型操作符,它允许我们将多个类型合并为一个新的类型。 阅读全文…
2024-03-22 TypeScript-联合类型 联合类型联合类型是 TypeScript 中的一个高级类型,允许一个变量是几种类型之一。你可以使用管道符(|)来定义一个联合类型,这告诉 TypeScript,该变量可以存储管道符两侧任何一种类型的值。例如,string | number 类型的变量可以接受字符串或数字。 阅读全文…