我使用typescript來設計使用Dependencies注入設計模式概念的類。 注射器類的代碼裏面有一行代碼: car.apply(car,[new doors]); 我們假設要執行主類,那麼我們可以使用(依賴項,方法),因爲我們將它們作爲參數注入它們,但是.apply不會執行該函數! 那麼究竟發生了什麼?.apply方法如何處理(類和原型)
var car = function(){
function car(doorsClass){
this.doorsClass = doorsClass;
\t \t this.color('red');
\t \t this.doorsNum(4);
}
car.prototype.color = function(color){
\t console.log('Car color is '+color);
}
car.prototype.doorsNum = function(doorsNum){
\t console.log('Car has '+this.doorsClass.doors(doorsNum)+' doors');
}
return car;
}
var doors = function(){
function doors(){ }
doors.prototype.doors = function(num){
\t return num;
}
return doors;
}
car.apply(car, [new doors]);
你的命名約定是可怕的,因此難以評論 - 但你肯定需要執行的(外)'M'功能,讓你的內心'M'到'apply' – Jamiec
對不起,我已經更新了代碼,使其更具可讀性。感謝您的筆記兄弟。 –