TypeScript 是一种由微软开发的自由和开源的编程语言。它是 JavaScript 的一个超集,而且本质上向这个语言添加了可选的静态类型和基于类的面向对象编程。
TypeScript 扩展了 JavaScript 的句法,所以任何现有的 JavaScript 程序可以不加改变的在 TypeScript 下工作。TypeScript 是为大型应用之开发而设计,而编译时它产生 JavaScript 以确保兼容性。
TypeScript 教程
选型/新特性
- 蚂蚁金服数据体验技术团队 - TypeScript体系调研报告
- Vilicvane - TypeScript 2.0 新特性一览
- Vilicvane - TypeScript 2.1 新特性一览
- Vilicvane - TypeScript 2.2 新特性一览
- Vilicvane - TypeScript 2.3 新特性一览
- Microsoft - TypeScript 2.4 新特性一览
- Vilicvane - TypeScript 2.5~2.6 新特性一览
- 黄子毅 - 精读<<TypeScript2.0 - 2.9>>
- Linux中国 - 一篇缺失的 TypeScript 介绍
- 单纯的土豆 - ES5, ES2015 和 TypeScript 的区别
- 三七二十 - TypeScript 的好处都有啥?和 JavaScript 的区别在哪?
- Grain 先森 - 前端-TypeScript VS JavaScript 深度对比
- 贺贺v5 - Angular2、Ionic、TypeScript、es6的关系?
- 极客学院 - 使用 TypeScript 提高开发能力
- Hevin - 为什么 Reddit 选择了 TypeScript?
- JiaXinYi - Angular: 我们为什么选择 TypeScript
- Djcordhose - 对比 Flow 和 TypeScript
- Neal1991 - 采用 Flow 以及 TypeScript
- 柳佳 - Flow vs Typescript
- SDK.cn - Slack 的 TypeScript 之路
- RDDcoding - 熟悉全栈TypeScript
- Lxxyx - TypeScript - 不止稳,而且快
- Zhangwang - TypeScript - 一种思维方式
- Lienviws - TypeScript 安利指南
中文资源
入门
- Xcatliu - TypeScript 入门教程
- Taobaofed - 认识 TypeScript
- Shangpudxd - TypeScript 入门
- Muyunyun - 从 JavaScript 到 TypeScript
- Gukson - Typescript基础入门
- oWSQo - TypeScript 入门
- Semlinker - TypeScript 简介及编码规范
- 技术胖 - TypeScript图文视频教程
进阶
- Zhongsp - TypeScript Handbook (中文版)
- Bjcl - TypeScript 教程
- Jason - 你所不知道的 Typescript 与 Redux 类型优化
- 王亦斯 - 巧用 Typescript
- 三毛 - 巧用 TypeScript (一)
- 三毛 - 巧用 TypeScript (二)
- 三毛 - 巧用 TypeScript (三)
- 三毛 - 巧用 TypeScript (四)
- 三毛 - 巧用 TypeScript (五)
- Square - TypeScript 3.0 元组类型的用法和一些奇技淫巧
- Square - Typescript 类型高级技巧,和强约束 bind 的实现
- 腾讯NEXT学位 - 深入 TypeScript 的类型系统
- newraina - 手把手教写 TypeScript Transformer Plugin
- EER - TypeScript 重构 Axios 经验分享
- 三毛 - 深入理解 TypeScript
- [Poetry - Typescript 实践总结[基础+工程+实践]](http://blog.poetries.top/2019...
实战
Angular
Vue
- 薯条真的好好吃哦 - almost最好的Vue + Typescript系列01 环境搭建篇
- toBeTheLight - Vue 2.5中将迎来有关TypeScript的改进!
- 盘风 - Vue2.5+ Typescript 引入全面指南
- 腾讯Bugly - vuejs+ts+webpack2框架的项目实践
- LinkFly - 从 JavaScript 到 TypeScript 6 - Vue 引入 TypeScript
- SimonZhanglTer - 可能是最全的Vue-TypeScript教程(附实例代码和一键构建工具)
- 三命 - vue + typescript 进阶篇
- qiangdada - TypeScript + 大型项目实战
- 距离 - Vue全家桶+TypeScript使用总结
- 海蓝2018 - vue全家桶+Typescript开发一款习惯养成APP
- Treri - 使用FIS3 和 TypeScript 实现 vue-hackernews-2.0
- 🍼holyZhengs - 记录一次基于vue、typescript、pwa的项目由开发到部署
- 大转转FE - 原有vue项目接入typescript
- MartinYin - 使用typescript+vue 编写电影信息小项目!
- 三毛 - 在 Vue 中使用 TypeScript 的一些思考(实践)
React
- fi3ework - 基于 React + TypeScript 的网易云音乐
- iKcamp - 翻译 | 开始使用 TypeScript 和 React
- 贾顺名 - TypeScript在react项目中的实践
- 花生毛豆 - TypeScript 在 React 中使用总结
- icepy - 复杂 React 应用中的TypeScript 3.0实践
- 蚂蚁金服数据体验技术团队 - TypeScript 实践
- 蚂蚁金服数据体验技术团队 - TypeScript 2.8下的终极React组件模式
React Native
Node.js
- MarxJiao - 使用webpack搭建基于typescript的node开发环境
- 天猪 - 当 Egg 遇到 TypeScript,收获茶叶蛋一枚
- 奇舞团 - ThinkJS 3.0 如何实现对 TypeScript 的支持
- 贾顺名 - TypeScript在node项目中的实践
- 贾顺名 - 使用 TS + Sequelize 实现更简洁的 CRUD
- YDJFE - 一次TypeScript, React, Node, MongoDB的模板式前后端分离开发实践
英文资源
特性
- Marius Schulz - TypeScript 2.0: The never Type
- Marius Schulz - TypeScript 2.0: Tagged Union Types
- Marius Schulz - TypeScript 2.0: Read-Only Properties
- Marius Schulz - TypeScript 2.1: Object Rest and Spread
- Marius Schulz - TypeScript 2.1: Mapped Types
- Marius Schulz - TypeScript 2.1: Improved Inference for Literal Types
- Marius Schulz - TypeScript 2.1: keyof and Lookup Types
- Marius Schulz - TypeScript 2.2: Dotted Properties and String Index Signatures
- Marius Schulz - TypeScript 2.3: Generic Parameter Defaults
- Marius Schulz - TypeScript 2.4: String Enums
- Marius Schulz - TypeScript 2.5: Optional catch Binding
- Marius Schulz - TypeScript 2.6: JSX Fragment Syntax
- Marius Schulz - TypeScript 2.7: Strict Property Initialization
- Marius Schulz - TypeScript 2.7: Numeric Separators
- Marius Schulz - TypeScript 2.8: Per-File JSX Factories
教程
- Microsoft - TypeScript-Handbook
- Microsoft - TypeScript Team Blog
- TypeStrong - Learn TypeScript
- Indrek Lasn - TypeScript — JavaScript with superpowers
- Indrek Lasn - TypeScript — JavaScript with superpowers II
- Martin Hochel - Interface vs Type alias in TypeScript 2.7
- Valentin PARSY - Typescript : class vs interface
- Victor Savkin - Functional TypeScript
- Netanel Basal - Using TypeScript Dynamic Imports in Angular
- Elena Sufieva - Advanced TypeScript Types with Examples
- Wolksoftware - Decorators Reflection JavaScript TypeScript
- Luis Aviles - Real Time Apps with TypeScript: Integrating Web Sockets, Node & Angular
- Jonny Fox - WebSocket + Node.js + Express — Step by step tutorial using Typescript
- Trey Huffine - TypeScript and React using create-react-app: A step-by-step guide to setting up your first app
- Rinto Jose - React Native with TypeScript
示例
- Microsoft - TypeScriptSamples
- DanWahlin - Angular-JumpStart
- chsakell - aspnet5-angular2-typescript
- Lemoncode - react-typescript-samples
- jaysoo - todomvc-redux-react-typescript
- rangle - typescript-react-redux-example
- luixaviles - socket-io-typescript-chat
- dwyl - hapi-typescript-example
风格指南
- piotrwitek - react-redux-typescript-guide
- labs42io - clean-code-typescript
- sw-yx - react-typescript-cheatsheet
Awesome
TypeScript Starter/Boilerplate
- Microsoft - TypeScript-React-Starter
- Microsoft - TypeScript-Vue-Starter
- Microsoft - TypeScript-Knockout-Starter
- Microsoft - TypeScript-React-Native-Starter
- Microsoft - TypeScript-WeChat-Starter
- Microsoft - TypeScript-Babel-Starter
- Microsoft - TypeScript-Node-Starter
- wmonk - create-react-app-typescript
- rokoroku - react-redux-typescript-boilerplate
- bitjson - typescript-starter
- blove - typescript-express-starter
- w3tecch - express-typescript-boilerplate
- MiroslavPetrik - nest-mongo-api-starter
- kamahl19 - react-starter
TypeScript 设计模式
- 蚂蚁金服数据体验技术团队 - Typescript玩转设计模式 之 创建型模式
- 蚂蚁金服数据体验技术团队 - Typescript玩转设计模式 之 结构型模式(上)
- 蚂蚁金服数据体验技术团队 - Typescript玩转设计模式 之 结构型模式(下)
- 蚂蚁金服数据体验技术团队 - Typescript玩转设计模式 之 对象行为型模式(上)
- 蚂蚁金服数据体验技术团队 -Typescript玩转设计模式 之 对象行为型模式(下)
- 杜帅 - 浅析Typescript设计模式
- torokmark - design_patterns_in_typescript
TypeScript 视频
中文视频
英文视频
- egghead.io - Use Types Effectively in TypeScript
- egghead.io - Up and Running with TypeScript
- egghead.io - advanced-static-types-in-typescript
- Microsoft - Angular Applications with TypeScript
- udemy - TypeScript Fundamentals
- udemy - Introduction to TypeScript
- udemy - TypeScript: Learn the Basics in a Refreshing Way
- youtube - Evolving JavaScript with TypeScript
- scrimba - Introduction to TypeScript
TypeScript 问答
- Segmentfault - 为什么Angular2和Ionic2都用TypeScript开发,TypeScript有什么优势吗?
- Zhihu - TypeScript 和 JavaScript 的区别?
- Zhihu - 如何评价 TypeScript?
- Zhihu - 现在 TypeScript 的生态如何?
- Zhihu - 关于Typescript和ES6的对比?
- Zhihu - 为什么 TypeScript 成功了,更先进的 ActionScript 却失败了?
- Zhihu - Typescript有什么冷门但是很好用的特性?
- Zhihu - TypeScript中的装饰器(Decorators)的本质是什么
- Zhihu - 如何学习用Typescript写Reactjs?
TypeScript 书籍
中文书籍
- Learning TypeScript (中文版)
- TypeScript实战指南
- TypeScript图形渲染实战:2D架构设计与实现
- 迈向 Angular 2: 基于 TypeScript 的高性能 SPA 框架
英文书籍
- TypeScript Essentials
- Mastering TypeScript
- Mastering TypeScript - Second Edition
- Mastering TypeScript 3: Build enterprise-ready, industrial-strength web applications using TypeScript 3 and modern frameworks, 3rd Edition
- TypeScript 3.0 Quick Start Guide: The easiest way to learn TypeScript
- Learn React with TypeScript 3: Beginner's guide to modern React web development with TypeScript 3
- Advanced TypeScript Programming Projects: Build 9 different apps with TypeScript 3 and JavaScript frameworks such as Angular, React, and Vue
- Hands-On RESTful Web Services with TypeScript 3: Design and develop scalable RESTful APIs for your applications
- Hands-On TypeScript for C# and .NET Core Developers: Transition from C# to TypeScript 3.1 and build applications with ASP.NET Core 2
- Hands-On Functional Programming with TypeScript: Explore functional and reactive programming to create robust and testable TypeScript applications
- Learning TypeScript
- Learning TypeScript 2.x
- TypeScript 2.x By Example
- TypeScript 2.x for Angular Developers
- Angular 2 Development with TypeScript
- TypeScript: Modern JavaScript Development
- TypeScript Blueprints
- Pro TypeScript
- TypeScript Design Patterns
- TypeScript High Performance
- TypeScript Microservices
TypeScript 工具/库/框架
构建工具
webpack
gulp
grunt
compiler
- TypeStrong - ts-node
- AssemblyScript - assemblyscript
- bcherny - json-schema-to-typescript
- YousefED - typescript-json-schema
linter
Ioc
文档生成
数据结构
数据库
Server
TypeScript IDE
Offline
IDE/插件
- Visual Studio Community
- Visual Studio Code
- WebStorm
- PhpStorm
- TypeScript Sublime Plugin
- Atom TypeScript
- TypeScript Interactive Development Environment for Emacs
- TypeScript IDE for Eclipse
- TypeScript Syntax for VIM
Online
Playground
- TypeScript official Playground
- Stackblitz
- JS Bin
- Codepen
- TypeScript Editor
- TypeScript Interpret - Terminal Emulator
- TypeScript Play