简介 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 建议您直接跳转到上面的网址查看最新版本. 介绍 TypeScript的核心原则之一是对值所具有的shape进行类型检查. 它有时被称做“鸭式辨型法”或“结构性子类型化”. 在TypeScript里,接口的作用就是为这些类型命名和为你的代码或第三方代码定义契约. 接口初探 下面通过一个简单示例来观察接口是如何工作的: function printLabel(labelledObj: { label: string }) { c…
版权 文章转载自: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有一些独特的概念,有的是因为我们需要描述JavaScript顶级对象的类型发生了哪些变化. 这其中之一叫做声明合并. 理解了这个概念,对于你使用TypeScript去操作现有的JavaScript来说是大有帮助的. 同时,也会有助于理解更多高级抽象的概念. 首先,在了解如何进行声明合并之前,让我们先看一下什么叫做声明合并. 在这个手册里,声明合并是指编译器会…
版权 文章转载自:https://github.com/zhongsp 建议您直接跳转到上面的网址查看最新版本. 介绍 除了传统的面向对象继承方式,还流行一种通过可重用组件创建类的方式,就是联合另一个简单类的代码. 你可能在Scala等语言里对mixins及其特性已经很熟悉了,但它在JavaScript中也是很流行的. 混入示例 下面的代码演示了如何在TypeScript里使用混入. 后面我们还会解释这段代码是怎么工作的. // Disposable Mixin class Disposable…
版权 文章转载自:https://github.com/zhongsp 建议您直接跳转到上面的网址查看最新版本. 介绍 软件工程中,我们不仅要创建一致的定义良好的API,同时也要考虑可重用性. 组件不仅能够支持当前的数据类型,同时也能支持未来的数据类型,这在创建大型系统时为你提供了十分灵活的功能. 在像C#和Java这样的语言中,可以使用泛型来创建可重用的组件,一个组件可以支持多种类型的数据. 这样用户就可以以自己的数据类型来使用组件. 泛型之Hello World 下面来创建第一个使用泛型的例…