CoffeScript编译:
class A
a: 'value'
为:
var A;
A = (function() {
function A() {}
A.prototype.a = 'value';
return A;
})();
与此有何不同:
var A = function A(){};
A.prototype.a = 'value';
我在控制台中测试了代码,第一个返回function A()
,而第二个返回"value"
,但是为了实例化类,要使用class A
,{{1适用于这两种情况。
答案 0 :(得分:0)
没有任何有效的区别,但由于CoffeeScript是一个代码生成器,它可能在不同情况下对变量作用域有其他用途,并且根本没有优化来减少实际上不需要额外的简单情况的代码范围。
我不使用CoffeeScript,但那是我的猜测。