【发布时间】:2018-05-29 11:59:49
【问题描述】:
我是 Angular 2 的新手,正在研究 Typescript,以便在 Angular 2 中构建简单的应用程序。
我发现我们可以使用类、接口、模块等和 typescript 来构建应用程序。
但就我学习 javascript 而言,我知道 javascript 不支持类、接口、模块等。
以下是我在学习时遇到的一些概念。
接口
接口用于类型检查对象是否适合特定结构。通过定义一个接口,我们可以命名一个特定的变量组合,确保它们总是在一起。
“当翻译成 JavaScript 时,接口消失了——它们的唯一目的是在开发阶段提供帮助。” 在下面的示例中,我们定义了一个简单的接口来对函数的参数进行类型检查:
“属性的顺序无关紧要。我们只需要存在所需的属性并且是正确的类型。如果缺少某些内容、类型错误或名称不同,编译器会警告我们。 "
类
在构建大型应用程序时,面向对象的编程风格受到许多开发人员的青睐。
TypeScript 提供了一个类系统,包括继承、抽象类、接口实现、setter/getter 等。”
这是一个类
模块
一个模块可以导出任意数量的函数、类或变量。默认情况下,对象以其原始名称导出。如果需要,我们可以更改此设置。一个模块也可以有一个默认的导出成员。
以下 sn -p 展示了不同导出语句的示例:
随着 typescript 被编译成 javascript,这些类、接口、模块等是如何被转换的?
【问题讨论】:
-
你会在typescript的文档中找到很多信息:typescriptlang.org/docs/handbook/classes.html
-
另外你可以看看一些编译好的打字稿文件,看看到底发生了什么,但为此你需要了解JS的对象继承:developer.mozilla.org/en-US/docs/Learn/JavaScript/Objects/…
-
请@Dinistro 对此做出回答,以便我投票。实时调频!
-
我还建议您在TypeScript playground 中输入您的一些示例 - 它会实时显示您的代码的编译输出是什么。
-
好的,我会试试这个
标签: javascript angular typescript