パラメータとして渡したい関数があります
function myFun(){
}
function myFunParam(myFun){
}
上記のコードは正しいですか?myFun
内で関数を呼び出すにはどうすればよいmyFunParam
ですか?
パラメータとして渡したい関数があります
function myFun(){
}
function myFunParam(myFun){
}
上記のコードは正しいですか?myFun
内で関数を呼び出すにはどうすればよいmyFunParam
ですか?
function myFun(){
alert('test');
}
function myFunParam(myFun){
if (typeof myFun === "function")
myFun(); // alerts "test"
}
関数に引数が必要な場合は、次のようにします。
function myFun(myarg){
alert(myarg);
}
function myFunParam(myFun){
if (typeof myFun === "function")
myFun('foo'); // alerts "foo"
}
または、オブジェクト (実際には配列のようなオブジェクト)を使用して任意の数の引数を渡すこともできます。arguments
それは正しいですが、グローバル myFun とパラメーターの間の混乱を避けるために、パラメーターの名前を変更することは間違いありません。
function myFunParam(func) {
func(); // call function
}
function myFun(){
}
function myFunParam(myFun){
if ($.isFunction(myFun)){
//Added example of passing arguments to myFun
myFun.apply(this, ['arg1', 'arg2', 'arg3']);
}
}
匿名関数を渡すこともできます。
myFunParam(function(){
alert('anonymous function');
});
またはあなたもこのようにすることができます
var newFunction = function() {
alert("I am in newFunction");
}
function calleFunction(func) {
func();
}
calleFunction(newFunction);
あなたのコードは正しいです。この方法で呼び出す必要があります:
function myFun(){
}
function myFunParam(myFun){
// Other Statements
myFun();
}
それが役に立てば幸い!:)
function outerFunction(innerFunction) {
innerFunction(); // call inner function
}