【发布时间】:2016-04-20 22:00:24
【问题描述】:
我已经使用 Angular 1 多年了,我开始学习如何使用 Angular 2。
但在编写任何代码行之前,我都在纠结是否必须使用 TypeScript 或 JavaScript。
- 使用 TypeScript 的优缺点是什么?
- 哪些是使用普通旧 JavaScript 的?
奖金问题:
- 是否有在 Angular 2 上下文中选择 JavaScript 和 TypeScript 的最佳做法?
我不知道 TypeScript,但从我看到的几段代码看来,主要特点是:
类型提示
隐藏在最常用的类语法下的原型机制。
浏览网页后的第一印象:
类型提示:
我喜欢类型提示,但我认为使用新语言来添加此功能有点过头了,并且会为开发人员使用松散类型的库产生更多工作(从文档中,有一些方法可以做这个)。
基于类的语法:
新的类语法(接近 ES6)怎么样?原型是 JavaScript 中最容易被误解的特性,但我认为理解它是如何工作的(知道你真正在做什么)比简单地把它放在一边更重要。
ES5 是一种基于原型的编程语言,那么为什么要使用基于伪类的编程语言,它最终会产生原型呢?我觉得很奇怪。
代码生成:
最后一点是关于代码生成器。我已经在其他情况下使用过代码生成器,但我不太喜欢它:在大多数情况下,人类会产生更好的书面代码(我查看了生成的 js:匿名函数,无处不在的匿名函数! ) 更简洁(在浏览器中加载生成的 js 文件时,大小对于减少加载很重要)
总结:
例如,我不太相信有兴趣学习 TypeScript 而不是坚持使用 ES5 JavaScript。所以我想从社区那里得到反馈,以了解使用 TypeScript 的优势。
【问题讨论】:
-
见Should I use typescript? or I can just use ES6。 Angular 2 本身是用 Typescript 编写的,因此它最终将成为 Angular 2 应用程序使用的标准。
-
您几乎已经列出了所有的优缺点。选择其中一个没有根本的技术原因,Angular 只是一个 Javascript 库,无论如何,一切都被编译成 Javascript,所以它会以一种或另一种方式工作。未来社区和生态系统将如何发展,我们无法告诉你。任君挑选。
标签: javascript typescript angular