TypeScript 4.0 使用手册
使用TypeScript的每日构建版本 Wiki TypeScript里的this 编码规范 常见编译错误 支持TypeScript的编辑器 结合ASP.NET v5使用TypeScript 架构概述 发展路线图 新增功能 TypeScript 4.0 TypeScript 3.9 TypeScript 3.8 TypeScript 3.7 TypeScript 3.6 TypeScript 3.5 TypeScript 致谢 当前文档 《TypeScript 4.0 使用手册》 由 进击的皇虫 使用 书栈网(BookStack.CN) 进 行构建,生成于 2020-09-09。 书栈网仅提供文档编写、整理、归类等功能,以及对文档内容的生成和导出工具。 文档内容由网友们编写和整理,书栈网难以确认文档内容知识点是否错漏。如果您在阅读文档获取 知识的时候,发现文档内容有不恰当的地方,请向我们反馈,让我们共同携手,将知识准确、高效且有 使用TypeScript的每日构建版本 Wiki TypeScript里的this 编码规范 常见编译错误 支持TypeScript的编辑器 结合ASP.NET v5使用TypeScript 架构概述 发展路线图 新增功能 TypeScript 4.0 TypeScript 3.9 TypeScript 3.8 TypeScript 3.7 TypeScript 3.6 TypeScript 3.5 TypeScript0 码力 | 683 页 | 6.27 MB | 1 年前3TypeScript Handbook(中文版)
NET Core ASP.NET 4 Gulp Knockout.js React与webpack React Angular 2 从JavaScript迁移到TypeScript 新增功能 TypeScript 2.4 TypeScript 2.3 TypeScript 2.2 TypeScript 2.1 TypeScript 2.0 TypeScript 1.8 TypeScript NET Core ASP.NET 4 Gulp Knockout.js React与webpack React Angular 2 从JavaScript迁移到TypeScript 新增功能 TypeScript 2.4 TypeScript Handbook(中文版) 4 介绍 TypeScript 2.3 TypeScript 2.2 TypeScript 2.1 TypeScript 文件,它包含了和输入文件中相同的JavsScript代 码。 一切准备就绪,我们可以运行这个使用TypeScript写的JavaScript应用了! 接下来让我们看看TypeScript工具带来的高级功能。 给 person 函数的参数添加 : string 类型注解,如下: function greeter(person: string) { return "Hello, " +0 码力 | 557 页 | 7.48 MB | 1 年前3Hello 算法 1.1.0 TypeScript版
淘宝订单。购物者下单后,订单将加入队列中,系统随后会根据顺序处理队列中的订单。在双十一期 间,短时间内会产生海量订单,高并发成为工程师们需要重点攻克的问题。 ‧ 各类待办事项。任何需要实现“先来后到”功能的场景,例如打印机的任务队列、餐厅的出餐队列等, 队列在这些场景中可以有效地维护处理顺序。 5.3 双向队列 在队列中,我们仅能删除头部元素或在尾部添加元素。如图 5‑7 所示,双向队列(double‑ended 实现另一个对称方向 的操作。为此,我们采用“双向链表”作为双向队列的底层数据结构。 如图 5‑8 所示,我们将双向链表的头节点和尾节点视为双向队列的队首和队尾,同时实现在两端添加和删除 节点的功能。 图 5‑8 基于链表实现双向队列的入队出队操作 实现代码如下所示: // === File: linkedlist_deque.ts === /* 双向链表节点 */ 第 5 章 栈与队列 这两者的所有应用场景,同时提供更高的自由度。 我们知道,软件的“撤销”功能通常使用栈来实现:系统将每次更改操作 push 到栈中,然后通过 pop 实现撤 销。然而,考虑到系统资源的限制,软件通常会限制撤销的步数(例如仅允许保存 50 步)。当栈的长度超过 50 时,软件需要在栈底(队首)执行删除操作。但栈无法实现该功能,此时就需要使用双向队列来替代栈。请 注意,“撤销”的核心逻辑仍然遵循栈0 码力 | 383 页 | 18.49 MB | 1 年前3Hello 算法 1.0.0b5 TypeScript 版
淘宝订单。购物者下单后,订单将加入队列中,系统随后会根据顺序依次处理队列中的订单。在双十一 期间,短时间内会产生海量订单,高并发成为工程师们需要重点攻克的问题。 ‧ 各类待办事项。任何需要实现“先来后到”功能的场景,例如打印机的任务队列、餐厅的出餐队列等。 队列在这些场景中可以有效地维护处理顺序。 5.3 双向队列 在队列中,我们仅能在头部删除或在尾部添加元素。如图 5‑7 所示,「双向队列 deque」提供了更高的灵活 实现另一个对称方向 的操作。为此,我们采用“双向链表”作为双向队列的底层数据结构。 如图 5‑8 所示,我们将双向链表的头节点和尾节点视为双向队列的队首和队尾,同时实现在两端添加和删除 节点的功能。 第 5 章 栈与队列 hello‑algo.com 99 图 5‑8 基于链表实现双向队列的入队出队操作 实现代码如下所示。 // === File: linkedlist_deque.ts 这两者的所有应用场景,同时提供更高的自由度。 我们知道,软件的“撤销”功能通常使用栈来实现:系统将每次更改操作 push 到栈中,然后通过 pop 实现撤 销。然而,考虑到系统资源的限制,软件通常会限制撤销的步数(例如仅允许保存 50 步)。当栈的长度超过 50 时,软件需要在栈底(即队首)执行删除操作。但栈无法实现该功能,此时就需要使用双向队列来替代栈。 请注意,“撤销”的核心逻辑仍然遵循0 码力 | 378 页 | 30.70 MB | 1 年前3Hello 算法 1.2.0 简体中文 TypeScript 版
淘宝订单。购物者下单后,订单将加入队列中,系统随后会根据顺序处理队列中的订单。在双十一期 间,短时间内会产生海量订单,高并发成为工程师们需要重点攻克的问题。 ‧ 各类待办事项。任何需要实现“先来后到”功能的场景,例如打印机的任务队列、餐厅的出餐队列等, 队列在这些场景中可以有效地维护处理顺序。 5.3 双向队列 在队列中,我们仅能删除头部元素或在尾部添加元素。如图 5‑7 所示,双向队列(double‑ended 实现另一个对称方向 的操作。为此,我们采用“双向链表”作为双向队列的底层数据结构。 如图 5‑8 所示,我们将双向链表的头节点和尾节点视为双向队列的队首和队尾,同时实现在两端添加和删除 节点的功能。 图 5‑8 基于链表实现双向队列的入队出队操作 实现代码如下所示: // === File: linkedlist_deque.ts === /* 双向链表节点 */ 第 5 章 栈与队列 这两者的所有应用场景,同时提供更高的自由度。 我们知道,软件的“撤销”功能通常使用栈来实现:系统将每次更改操作 push 到栈中,然后通过 pop 实现撤 销。然而,考虑到系统资源的限制,软件通常会限制撤销的步数(例如仅允许保存 50 步)。当栈的长度超过 50 时,软件需要在栈底(队首)执行删除操作。但栈无法实现该功能,此时就需要使用双向队列来替代栈。请 注意,“撤销”的核心逻辑仍然遵循栈0 码力 | 383 页 | 18.49 MB | 10 月前3Hello 算法 1.2.0 繁体中文 TypeScript 版
淘寶訂單。購物者下單後,訂單將加入列列中,系統隨後會根據順序處理佇列中的訂單。在雙十一期 間,短時間內會產生海量訂單,高併發成為工程師們需要重點攻克的問題。 ‧ 各類待辦事項。任何需要實現“先來後到”功能的場景,例如印表機的任務佇列、餐廳的出餐佇列等, 佇列在這些場景中可以有效地維護處理順序。 5.3 雙向佇列 在佇列中,我們僅能刪除頭部元素或在尾部新增元素。如圖 5‑7 所示,雙向佇列(double‑ended 稱方向 的操作。為此,我們採用“雙向鏈結串列”作為雙向佇列的底層資料結構。 如圖 5‑8 所示,我們將雙向鏈結串列的頭節點和尾節點視為雙向佇列的佇列首和佇列尾,同時實現在兩端新 增和刪除節點的功能。 圖 5‑8 基於鏈結串列實現雙向佇列的入列出列操作 實現程式碼如下所示: // === File: linkedlist_deque.ts === /* 雙向鏈結串列節點 */ 第 5 所有應用場景,同時提供更高的自由度。 我們知道,軟體的“撤銷”功能通常使用堆疊來實現:系統將每次更改操作 push 到堆疊中,然後透過 pop 實 現撤銷。然而,考慮到系統資源的限制,軟體通常會限制撤銷的步數(例如僅允許儲存 50 步)。當堆疊的長 度超過 50 時,軟體需要在堆疊底(佇列首)執行刪除操作。但堆疊無法實現該功能,此時就需要使用雙向佇 列來替代堆疊。請注意,“撤銷”的核心邏輯0 码力 | 384 页 | 18.80 MB | 10 月前3Hello 算法 1.0.0b1 TypeScript 版
淘宝订单。购物者下单后,订单就被加入到队列之中,随后系统再根据顺序依次处理队列中的订单。在 双十一时,在短时间内会产生海量的订单,如何处理「高并发」则是工程师们需要重点思考的问题。 ‧ 各种待办事项。任何需要实现“先来后到”的功能,例如打印机的任务队列、餐厅的出餐队列等等。 5.3. 双向队列 对于队列,我们只能在头部删除或在尾部添加元素,而「双向队列 Deque」更加灵活,在其头部和尾部都能 执行元素添加或删除操作。 例如,给定一个包含 ? 个学生的数据库,每个学生有“姓名 name ”和“学号 id ”两项数据,希望实现一个查 询功能:输入一个学号,返回对应的姓名,则可以使用哈希表实现。 Figure 6‑1. 哈希表的抽象表示 6.1.1. 哈希表效率 除了哈希表之外,还可以使用以下数据结构来实现上述查询功能: 1. 无序数组:每个元素为 [学号, 姓名] ; 2. 有序数组:将 1. 中的数组按照学号从小到大排序; 找到目标元素,返回其索引 return m; } } return -1; // 未找到目标元素,返回 -1 } “左闭右开”实现 当然,我们也可以使用“左闭右开”的表示方法,写出相同功能的二分查找代码。 // === File: binary_search.ts === /* 二分查找(左闭右开) */ function binarySearch1(nums: number[]0 码力 | 186 页 | 14.71 MB | 1 年前3TypeScript 多场景设计方案及应用实践
⼀一 直没有很好的实践产品。 使⽤用描述⽂文件创建实例例(xml) TS 配置 使⽤用描述⽂文件创建实例例(xml) TS 升级 使⽤用 inversify 的⾃自动化 优势:简单,功能精简 劣势:满⾜足不不了了⾃自定义的需求(xml) ⾃自动化装配 TS TS TS TS ⾃自研 100%满⾜足⾃自⼰己的需求,整体代码⾃自⼰己能掌握,同时更更简单 ⾃自研 injection0 码力 | 95 页 | 8.28 MB | 1 年前3
共 8 条
- 1