与Closure Compiler一起使用的JavaScript类的实现

时间:2013-03-22 09:10:58

标签: javascript oop class google-closure-compiler

对于与Closure Compiler的ADVANCED_OPTIMIZATIONS一起使用的JavaScript,是否有类类继承的实现?

看起来John Resig's implementation没有。

2 个答案:

答案 0 :(得分:0)

这是设置继承的最简单和最常用的方法之一:

function Parent() {}

function Child() {}

Child.prototype = Object.create(Parent.prototype);
Child.prototype.constructor = Child;

并且它与闭包编译器一起工作正常。我不确定Object.create是否被正确识别,但是看看闭包库中goog.inherits的实现,基本上也是如此。

答案 1 :(得分:0)

编译器目前只识别“goog.inherits”并直接分配给原型:

Child.prototype = new Parent();

Object.create比喻是一个明显的补充,但还没有完成。要获得其他任何可识别的内容,需要定义新的编码约定类(这是在类型检查期间识别goog.inherits的方式)或更改编译器(对于Object.create可能需要)。

如果想要支持Object.create,您需要在此处提出问题:

https://code.google.com/p/closure-compiler/issues/list