你的代碼重構的主要目的很可能是取消鑄造,而不是去除輕微的重複。
此外,您不需要遠至any
,因爲您正在查找的操作來自一個數組,因此您可以使用至少知道這一點的any[]
。
我已經允許兩個參數傳遞給我的方法:)拉伸羅伯特ç馬丁對參數的數量規則 - 參數是通過該方法的名字所暗示的順序,添加觸發到陣列。
function addTriggerToArray(trigger: any, triggerArray: any[]) {
triggerArray.push(trigger);
}
$.each(obj.triggers, function (index, value) {
addTriggerToArray(Trigger.objectToTrigger(value), sc.triggers);
});
$.each(obj.notStartTriggers, function (index, value) {
addTriggerToArray(Trigger.objectToTrigger(value), sc.notStartTriggers);
});
要更新你可以使用現有的項目...
function updateTrigger(trigger: any, index: number, triggerArray: any[]) {
triggerArray[index] = trigger;
}
$.each(obj.triggers, function (index, value) {
updateTrigger(Trigger.objectToTrigger(value), index, sc.triggers);
});
$.each(obj.notStartTriggers, function (index, value) {
updateTrigger(Trigger.objectToTrigger(value), index, sc.notStartTriggers);
});
,我不認爲這個問題是非常明顯的得到(米)的任何答案。你究竟想要做什麼,你嘗試過什麼,什麼是或不在工作? – JcFx 2013-04-25 07:52:50