,如果你想鏈的功能,你需要返回一樣,如果你有一個類經理和縱座標的一個對象:
function Manager(name){
this.name = name;
this.subordinate = {John : new Subordinate('John')};
this.getSubordinate = function getSubordinate(subName){
return this.subordinate[subName];
};
}
function Subordinate(name){
this.name = name;
this.salary = 0;
this.addSalary = function addSalary(salary){
this.salary = salary;
return salary;
};
}
var result = new Manager('Joe').getSubordinate("John").addSalary(10000);
,但我想你想作爲結果的管理對象,因此我建議使用這種方式
function Manager(name){
var self = this;
this.name = name;
this.subordinate = {John : new Subordinate('John')};
this.getSubordinate = function getSubordinate(subName){
return this.subordinate[subName];
};
this.addSalaryToSubordinate = function addSalaryToSubordinate(subName, salary){
self.getSubordinate(subName).addSalary(salary);
return self;
};
}
function Subordinate(name){
this.name = name;
this.salary = 0;
this.addSalary = function addSalary(salary){
this.salary = salary;
return salary;
};
}
var result = new Manager('Joe').addSalaryToSubordinate ("John", 10000);
這是一個字幕比賽嗎?毫無疑問,請參閱[*我如何提出一個好問題?](http://stackoverflow.com/help/how-to-ask) – RobG
究竟是什麼問題? –
「原型鏈」?從你的代碼你似乎在問如何寫一個流利的API ... – giorgiga