管理内置对象的扩展

时间:2012-12-10 18:47:46

标签: javascript google-closure-compiler google-closure

我正在开发一个项目,其中代码大小至关重要,并使用Google Closure Compiler的ADVANCED_OPTIMIZATIONS编译我的代码。我需要使用他们的原型扩展某些内置对象(例如Date和Number)。我想将这些扩展打包到一个可重用的库中,并让编译器只包含那些在代码中实际使用的扩展。

到目前为止,我想出的唯一方法是将每个包装在'@defined'常量中,我可以单独切换为编译器标志。其他方式似乎包括所有扩展或不包括这些扩展。这是相当笨拙的,有更好的方法吗?

澄清:

在图书馆档案中

Number.prototype.foo = function() { ... }

Number.prototype.bar = function() { ... }

Number.prototype.something = function() { ... }

代码

function somefunc() {
   25.foo();
   ...
   41.foo();
}

我不想要的是编译代码中出现的Number.bar和Number.something,因为它们没有在主要来源中使用。

0 个答案:

没有答案