我正在学习ES6,有一件事让我感到困惑。
我一直在谷歌上搜索,找不到任何答案。
我正在考虑的方式就是:
功能:用于一些与misc相关的代码块。
类:用于大块相关代码
模块:用于编写插件/相关功能
正如你所看到的,我有点困惑。
所以我的问题是:
我何时使用:ES6中的功能,A类或A模块?
答案 0 :(得分:1)
功能:用于将一大块逻辑组合在一起。例如,一个操纵数据的函数。
类:HAS属性和函数的对象。如果您需要创建该对象的多个副本,则非常有用。正如上面的评论所述:阅读面向对象编程以更好地理解类。
模块:一种在自己的.js文件中分隔代码(包括函数和类)的方法。在开发过程中,这会使代码分离,并允许您使用其他人创建的模块。在运行时,您可以将所有模块捆绑在一个大的.js文件中,或者甚至可以延迟加载模块。
答案 1 :(得分:1)
在JavaScript中,类并不存在。它们被转换/转换为函数,因为非常绿浏览器会跳过class
关键字。
检查TypeScript Playground,它包含一个如何将类转换为函数的示例。
具有属性greeting
和函数greet()
class Greeter {
greeting: string;
constructor(message: string) {
this.greeting = message;
}
greet() {
return "Hello, " + this.greeting;
}
}
哪个TypeScript编译成
var Greeter = (function () {
function Greeter(message) {
this.greeting = message;
}
Greeter.prototype.greet = function () {
return "Hello, " + this.greeting;
};
return Greeter;
}());