简介 TypeScript是一种由微软开发的自由和开源的编程语言.它是JavaScript的一个超集,而且本质上向这个语言添加了可选的静态类型和基于类的面向对象编程.安德斯·海尔斯伯格,C#的首席架构师,已工作于TypeScript的开发. TypeScript扩展了 JavaScript 的句法,所以任何现有的JavaScript程序可以不加改变的在TypeScript下工作.TypeScript是为大型应用之开发而设计,而编译时它产生 JavaScript 以确保兼容性. TypeScrip…
缘由 事情是这样的,我想搜索 TypeScript 中文教程,结果在 https://www.baidu.com , https://cn.bing.com ,上都找不到官方的翻译,也没有一个像样的翻译(搜索的时间是2015-12-02),可怜我们无法使用google,所以就想去自己翻译官方的 TypeScript-Handbook. 于是我Fork了官方的库 https://github.com/Microsoft/TypeScript-Handbook , 到我的库中https://gith…
目录 虽然我是转载的,但看在Copy这么多文章也是很幸苦的好吧,我罗列一个目录. 转载:<TypeScript 中文入门教程> 17.注解 (2015-12-03 11:36) 转载:<TypeScript 中文入门教程> 16.Symbols (2015-12-03 11:35) 转载:<TypeScript 中文入门教程> 15.可迭代性 (2015-12-03 11:33) 转载:<TypeScript 中文入门教程> 14.输入.d.ts文件 (20…
转载:<TypeScript 中文入门教程> 17.注解 (2015-12-03 11:36) 转载:<TypeScript 中文入门教程> 16.Symbols (2015-12-03 11:35) 转载:<TypeScript 中文入门教程> 15.可迭代性 (2015-12-03 11:33) 转载:<TypeScript 中文入门教程> 14.输入.d.ts文件 (2015-12-03 11:31) 转载:<TypeScript 中文入门教程&…
版权 文章转载自:https://github.com/zhongsp 建议您直接跳转到上面的网址查看最新版本. 介绍 软件工程中,我们不仅要创建一致的定义良好的API,同时也要考虑可重用性. 组件不仅能够支持当前的数据类型,同时也能支持未来的数据类型,这在创建大型系统时为你提供了十分灵活的功能. 在像C#和Java这样的语言中,可以使用泛型来创建可重用的组件,一个组件可以支持多种类型的数据. 这样用户就可以以自己的数据类型来使用组件. 泛型之Hello World 下面来创建第一个使用泛型的例…
版权 文章转载自:https://github.com/zhongsp 建议您直接跳转到上面的网址查看最新版本. 介绍 函数是JavaScript应用程序的基础. 它帮助你实现抽象层,模拟类,信息隐藏和模块. 在TypeScript里,虽然已经支持类,命名空间和模块,但函数仍然是主要的定义行为的地方. TypeScript为JavaScript函数添加了额外的功能,让我们可以更容易的使用. 函数 和JavaScript一样,TypeScript函数可以创建有名字的函数和匿名函数. 你可以随意选择…
版权 文章转载自:https://github.com/zhongsp 建议您直接跳转到上面的网址查看最新版本. 介绍 随着TypeScript和ES6里引入了类,现在在一些场景下我们会需要额外的特性来支持注解或修改类和类成员. Decorators提供了一种方式来添加注解和在类的声明和成员上使用元编程语法. Javascript里的Decorators目前处在建议征集的第一阶段,在TypeScript里做为实验性特性已经提供了支持. 注意  Decorators是实验性的特性,在未来的版本中可…
版权 文章转载自:https://github.com/zhongsp 建议您直接跳转到上面的网址查看最新版本. 介绍 当使用外部JavaScript库或新的宿主API时,你需要一个声明文件(.d.ts)定义程序库的shape. 这个手册包含了写.d.ts文件的高级概念,并带有一些例子,告诉你怎么去写一个声明文件. 指导与说明 流程 最好从程序库的文档开始写.d.ts文件,而不是代码. 这样保证不会被具体实现所干扰,而且相比于JS代码更易读. 下面的例子会假设你正在参照文档写声明文件. 命名空间…
版权 文章转载自:https://github.com/zhongsp 建议您直接跳转到上面的网址查看最新版本. 介绍 TypeScript里的类型兼容性基于结构子类型的. 结构类型是只一种只使用其成员来描述类型的方式. 它正好与名义类型形成对比. 看下面的例子: interface Named { name: string; } class Person { name: string; } var p: Named; // OK, because of structural typing p…
版权 文章转载自:https://github.com/zhongsp 建议您直接跳转到上面的网址查看最新版本. 介绍 这节介绍TypeScript里的类型推论.即,类型是在哪里如何被推断的. 基础 TypeScript里,在有些没有明确指出类型的地方,类型推论会帮助提供类型.如下面的例子 var x = 3; 变量x的类型被推断为数字. 这种推断发生在初始化变量和成员,设置默认参数值和决定函数返回值时. 大多数情况下,类型推论是直截了当地. 后面的小节,我们会浏览类型推论时的细微差别. 最佳通…