2011-08-12 19 views
1

さて、関数を見て、それらを引数として使用しました。のは、私が機能を取り、それをしない機能を持っているとしましょう:引数として渡される関数の定義

function run(someFunction,someArgument) { 
    someFunction(someArgument); 
} 

私が言う、私は既存の関数を渡すことができることを参照してください。

function foo(bar) { 
    // foo that bar! 
} 

run(foo,bar);を呼び出すことによって、私はまた、機能を作ることができますオンザフライでのオブジェクトで、それを実行します。

var whiteBoy = { 
    playThat: function(funkyMusic) { 
     // funk out in every way 
    } 
}; 

そして私は私が行うことができるようにしたいのですがどのようなrun(whiteBoy.playThat,funkyMusic);を呼び出すには、このように、呼び出しで関数を定義している:

run(/* define a new function */,relevantArgument); 

どうすればいいですか?

このよう

答えて

5

:あなたは関数を定義し、playThatプロパティに割り当てていたやった

var whiteBoy = { 
    playThat: function(funkyMusic) { 
     // funk out in every way 
    } 
}; 

- その唯一の変更は:あなたがこれを書いたときには非常に接近していた

run(function(funkyMusic) { 
    // funk out in every way 
}, relevantArgument); 

私は関数を定義し、何かに代入するのではなく引数として渡すようにしました。

2
run(function(when) 
    { 
     alert("play that funky music " + when); 
    }, 
    "noooow!"); 
関連する問題