aar*_*ona 4 javascript monkeypatching partial-classes
部分类背后的想法是你可以将某些功能组合在一起.C#中最好的例子是将控件定义放在一个文件中,将事件处理程序放在另一个文件中.在Ruby中,您可以使用Monkey修补来替换整个函数等,以获取代码来执行您想要的操作.
我还没有找到理由这样做,但我认为随着网络的改进,更多的应用程序将在客户端,所以我想知道我在服务器端语言中找到的一些很棒的功能,我也可以在Javascript中使用.
有人知道吗?
// file 1
function augment() {
this.monkey = "monkey";
}
// file 2
function augmentMore() {
this.patch = "patch";
}
// file 3
var o = {};
augment.call(o);
augmentMore.call(o);
console.log(o.monkey + o.patch);
Run Code Online (Sandbox Code Playgroud)
猴子修补工作.部分类可以按惯例工作.例如,考虑这个惯例.
// file main
function SomeObject() {
for (var i = 0, ii = SomeObject.Partial.length; i < ii; i++) {
SomeObject.Partial[i].apply(this, arguments);
}
}
SomeObject.Partial.SomeName = function() {
...
}
// file extra
SomeObject.Partial.SomeOtherName = function() {
...
}
Run Code Online (Sandbox Code Playgroud)
JavaScript非常强大.你有什么特别的例子吗?