我对数百种创建 JS 类的方法感到困惑。有人说我应该使用原型,而另一些人说没有人使用原型,因为它“不好”。另一方面,CoffeeScript 使用原型,但用函数 whick 返回自身(或其他东西)包装了一个构造。我见过返回对象的函数,返回返回对象的函数的函数等。
我认为这应该很容易,并且不需要任何框架来创建一种语言的类——也许我遗漏了一些东西。
还有两种(至少)创建方法的方法:foo: function() {}
和function foo() {}
。我什至在单节课上见过这两种方式。问题是第一种方法会导致创建匿名函数(恰好被分配给对象的字段)并且调试器说错误发生在由匿名函数等调用的匿名函数中。
我知道 JS 旨在实现功能而不是 OOP,但有时类是描述概念的最佳方式(例如,UI 小部件想要成为类)。
我会很感激一个正确构建类的例子,几乎没有解释。