set() メソッドの成功または失敗に応じてさらに処理を実行したいのですが、set() メソッドを呼び出す時点でいくつかのオブジェクトのコンテキストが必要です。そうしないと、オブジェクトをグローバルに配置しない限り、oncomplete 関数が呼び出されたときにオブジェクトがスコープ外になります。これは実際には行いたくありません。
次に例を示します。
function oncomplete_AddTran(tran,client,appt,balance){
/* if named argument 'balance' exists it is safe to assume
Firebase has not 'stepped on' the arguments with it's single
Error object or null */
if(balance typeof object) console.log("my parameters made it here");
}
function addTran(tran, client, appt, balance) {
var TRANS_LOCATION = 'https://xxx.firebaseIO.com/testing/transactions';
var tranListRef = new Firebase(TRANS_LOCATION);
var oncomplete = function() {
oncomplete_AddTran(tran, client, appt, balance); };
var tranref = tranListRef.child(tran.name).set(tran.literal, oncomplete);
}