是否可以將回調參數從回調函數塊本身傳遞給另一個方法?例如:將回調函數作爲參數從本身傳入
var resultCallback = function(result){
if(result)
{
alert('success!');
}else{
callServiceB(resultCallback);
}
}
callServiceA(resultCallback);
原因是我希望在JavaScript中鍛鍊類似責任鏈模式的東西。
嘗試使用Google搜索,但迄今爲止一無所獲。任何想法或評論都歡迎。
是的,你可以。你試過了嗎? – Bergi
然而,將同一個函數中的責任鏈('callServiceB')和生成的動作('alert('success!')')放在同一個函數中是奇怪的/壞的練習/設計異味。對結果使用單獨的回調。它可能看起來像'callServiceA(orCallServiceB(alertResult))'或'(callServiceA,callServiceB)(alertResult)' – Bergi
實際上情況下有很多調用其他方法,爲簡潔起見我簡化爲2。邏輯就像1.調用函數a 2.如果函數a ok,然後調用函數b 3.如果函數b ok,然後調用函數c,等等。 – ipohfly