次のようなコード:
var Policy={
initialize:function(){
return function(){
this.initialize.apply(this,arguments);
};
}
};
var AjaxLoadingPolicy= Policy.initialize();//(1)
AjaxLoadingPolicy.prototype={
initialize:function(name){
this.name=name;
}
};
このコードに基づく AjaxLoadingPolicy は、(1) の this.initialize.apply(this,arguments) を持つ関数です。しかし、 this.initialize が何であるかはよくわかりません。また、なぜ AjaxLoadingPolicy.prototype で定義できるのでしょうか? また、superclass の優先順位をインスタンスに適用するために apply が使用されていませんか?