TypeScript Handbook(中文版)
接口 类 函数 泛型 枚举 类型推论 类型兼容性 高级类型 Symbols Iterators 和 Generators 模块 命名空间 命名空间和模块 模块解析 声明合并 书写.d.ts文件 JSX Decorators 混入 三斜线指令 如何书写声明文件 结构 规范 举例 深入 发布 使用 工程配置 tsconfig.json NPM包的类型 接口 类 函数 泛型 枚举 类型推论 类型兼容性 高级类型 Symbols Iterators 和 Generators 模块 命名空间 命名空间和模块 模块解析 声明合并 书写.d.ts文件 JSX Decorators 混入 三斜线指令 如何书写声明文件 结构 TypeScript Handbook(中文版) 5 介绍 规范 举例 深入 发布 注意,我们为Broswerify指定了 debug: true 。 这会让 tsify 在输出文件里生 成 source maps 。 source maps 允许我们在浏览器中直接调试TypeScript源 码,而不是在合并后的JavaScript文件上调试。 你要打开调试器并在 main.ts 里 打一个断点,看看 source maps 是否能工作。 当你刷新页面时,代码会停在断点 处,从而你就能够调试 greet0 码力 | 557 页 | 7.48 MB | 1 年前3
TypeScript 4.0 使用手册
接口 类 函数 泛型 枚举 类型推论 类型兼容性 高级类型 Symbols Iterators 和 Generators 模块 命名空间 命名空间和模块 模块解析 声明合并 JSX Decorators 混入 三斜线指令 JavaScript文件里的类型检查 - 2 - 本文档使用 书栈网 · BookStack.CN 构建 实用工具类型 如何书写声明文件 函数 字面量类型 泛型 枚举 类型推论 类型兼容性 高级类型 Symbols Iterators 和 Generators 模块 命名空间 命名空间和模块 模块解析 声明合并 JSX Decorators 混入 三斜线指令 JavaScript文件里的类型检查 实用工具类型 如何书写声明文件 介绍 目录 README - 8 - 本文档使用 书栈网 书栈网 · BookStack.CN 构建 类型推论 类型兼容性 高级类型 Symbols Iterators 和 Generators 模块 命名空间 命名空间和模块 模块解析 声明合并 JSX Decorators 混入 三斜线指令 JavaScript文件里的类型检查 实用工具类型 如何书写声明文件 介绍 库结构 举例 最佳实践 深入 模板 发布 使用0 码力 | 683 页 | 6.27 MB | 1 年前3
Hello 算法 1.0.0b1 TypeScript 版Sort」是算法中“分治思想”的典型体现,其有「划分」和「合并」两个阶段: 1. 划分阶段:通过递归不断 将数组从中点位置划分开,将长数组的排序问题转化为短数组的排序问题; 2. 合并阶段:划分到子数组长度为 1 时,开始向上合并,不断将 左、右两个短排序数组 合并为 一个长排 序数组,直至合并至原数组时完成排序; Figure 11‑8. 归并排序的划分与合并阶段 11. 排序算法 hello‑algo 1, right] ); 2. 递归执行 1. 步骤,直至子数组区间长度为 1 时,终止递归划分; 「回溯合并」从底至顶地将左子数组和右子数组合并为一个 有序数组; 需要注意,由于从长度为 1 的子数组开始合并,所以 每个子数组都是有序的。因此,合并任务本质是要 将两 个有序子数组合并为一个有序数组。 11. 排序算法 hello‑algo.com 175 Figure 11‑9. 归并排序步骤 观察发现,归并排序的递归顺序就是二叉树的「后序遍历」。 ‧ 后序遍历:先递归左子树、再递归右子树、最后处理根结点。 ‧ 归并排序:先递归左子树、再递归右子树、最后处理合并。 // === File: merge_sort.ts === /* 合并左子数组和右子数组 */ // 左子数组区间 [left, mid] // 右子数组区间 [mid + 1, right] function merge(nums:0 码力 | 186 页 | 14.71 MB | 1 年前3
Hello 算法 1.0.0b5 TypeScript 版hello‑algo.com 210 图 10‑6 二分查找重复元素的插入点的步骤 观察以下代码,判断分支 nums[m] > target 和 nums[m] == target 的操作相同,因此两者可以合并。 即便如此,我们仍然可以将判断条件保持展开,因为其逻辑更加清晰、可读性更好。 // === File: binary_search_insertion.ts === /* 二分查找插入点(存在重复元素) 11‑10 所示的“划分”和“合并”阶段。 1. 划分阶段:通过递归不断地将数组从中点处分开,将长数组的排序问题转换为短数组的排序问题。 2. 合并阶段:当子数组长度为 1 时终止划分,开始合并,持续地将左右两个较短的有序数组合并为一个较 长的有序数组,直至结束。 第 11 章 排序 hello‑algo.com 237 图 11‑10 归并排序的划分与合并阶段 11.6.1 算法流程 mid] )和右子数组(区间 [mid + 1, right] )。 2. 递归执行步骤 1. ,直至子数组区间长度为 1 时,终止递归划分。 “合并阶段”从底至顶地将左子数组和右子数组合并为一个有序数组。需要注意的是,从长度为 1 的子数组开 始合并,合并阶段中的每个子数组都是有序的。 第 11 章 排序 hello‑algo.com 238 图 11‑11 归并排序步骤 观察发现,归并排序与二叉树后序遍历的递归顺序是一致的。0 码力 | 378 页 | 30.70 MB | 1 年前3
Hello 算法 1.1.0 TypeScript版hello‑algo.com 214 图 10‑6 二分查找重复元素的插入点的步骤 观察以下代码,判断分支 nums[m] > target 和 nums[m] == target 的操作相同,因此两者可以合并。 即便如此,我们仍然可以将判断条件保持展开,因为其逻辑更加清晰、可读性更好。 // === File: binary_search_insertion.ts === /* 二分查找插入点(存在重复元素) 11‑10 所示的“划分”和“合并”阶段。 1. 划分阶段:通过递归不断地将数组从中点处分开,将长数组的排序问题转换为短数组的排序问题。 2. 合并阶段:当子数组长度为 1 时终止划分,开始合并,持续地将左右两个较短的有序数组合并为一个较 长的有序数组,直至结束。 第 11 章 排序 hello‑algo.com 239 图 11‑10 归并排序的划分与合并阶段 11.6.1 算法流程 mid] )和右子数组(区间 [mid + 1, right] )。 2. 递归执行步骤 1. ,直至子数组区间长度为 1 时终止。 “合并阶段”从底至顶地将左子数组和右子数组合并为一个有序数组。需要注意的是,从长度为 1 的子数组开 始合并,合并阶段中的每个子数组都是有序的。 第 11 章 排序 hello‑algo.com 240 图 11‑11 归并排序步骤 观察发现,归并排序与二叉树后序遍历的递归顺序是一致的。0 码力 | 383 页 | 18.49 MB | 1 年前3
Hello 算法 1.2.0 简体中文 TypeScript 版hello‑algo.com 214 图 10‑6 二分查找重复元素的插入点的步骤 观察以下代码,判断分支 nums[m] > target 和 nums[m] == target 的操作相同,因此两者可以合并。 即便如此,我们仍然可以将判断条件保持展开,因为其逻辑更加清晰、可读性更好。 // === File: binary_search_insertion.ts === /* 二分查找插入点(存在重复元素) 11‑10 所示的“划分”和“合并”阶段。 1. 划分阶段:通过递归不断地将数组从中点处分开,将长数组的排序问题转换为短数组的排序问题。 2. 合并阶段:当子数组长度为 1 时终止划分,开始合并,持续地将左右两个较短的有序数组合并为一个较 长的有序数组,直至结束。 第 11 章 排序 www.hello‑algo.com 239 图 11‑10 归并排序的划分与合并阶段 11.6.1 算法流程 mid] )和右子数组(区间 [mid + 1, right] )。 2. 递归执行步骤 1. ,直至子数组区间长度为 1 时终止。 “合并阶段”从底至顶地将左子数组和右子数组合并为一个有序数组。需要注意的是,从长度为 1 的子数组开 始合并,合并阶段中的每个子数组都是有序的。 第 11 章 排序 www.hello‑algo.com 240 图 11‑11 归并排序步骤 观察发现,0 码力 | 383 页 | 18.49 MB | 10 月前3
TypeScript 类型系统TypeScript 函数重载 13 1. TypeScript类型信息只存在于编译期,不会带到运行期 2. TypeScript要与JavaScript兼容 TypeScript 接口 14 接口合并 接口继承 类实现接口 TypeScript 接口 15 TypeScript 类型断言 16 TypeScript 类型守卫/类型收敛 17 当遇到下面这些条件语句时,TypeScript会在语句作用域内部收敛变量的类型0 码力 | 25 页 | 1.27 MB | 1 年前3
抛开文档,让Web开发更高效 - Typescript 项目第三方类库使用指南
2D / 3D 游戏引擎: Egret Engine 轻量 APP 开发: 青雀平台 可视化开发环境:Egret Wing 开发者、渠道商和第三方服务商的服务平台 • TypeScript 简介 • TypeScript 开发环境 • 如何使用现有 JavaScript 库 超集 静态类型 JavaScript npm install typescript –g npm install0 码力 | 24 页 | 961.21 KB | 1 年前3
TypeScript 多场景设计方案及应用实践
场景,⽽而淘宝有不不少全栈场景 js/ts ⽬目录混合 TS 体验不不同 Egg 解决的是 BFF 场景,⽽而淘宝有不不少全栈场景 class ⽤用法,⽆无法多继承 TS 杂糅的 app/ctx 合并机制 体验不不同 Egg 解决的是 BFF 场景,⽽而淘宝有不不少全栈场景 TS 第⼀一代设计 第⼀一代设计 TS 解决复杂度问题 尝试引⼊入 IoC 解决复杂业务的问题 TS 配置0 码力 | 95 页 | 8.28 MB | 1 年前3
共 9 条
- 1













