2

これは JavaScript または JQuery を使用して可能でしょうか?

関数にパラメーターを渡したいのですが、他の条件が満たされると実行されるコードがあります。

4

2 に答える 2

3

次のように、実行するコードを関数オブジェクトとして渡すことができます。

function executeCode(condition, code) {
    if (condition) code();
}

executeCode(true, function() { alert('executed'); });
于 2012-07-30T10:05:41.237 に答える
1

関数は、JavaScript のファースト クラス オブジェクトです。配列やその他のものと同じように、それらを変数で渡すことができます。

トリッキーなビットは、それらの条件が何であるかに依存するため、「他の条件が満たされたら」です。

イベントをリッスンするか、 でポーリングして偽装することができますsetInterval

var bar = false;

function doWhenBarIsTrue(func) {
    var interval = setInterval(function () {
        if (bar) { 
            clearInterval(interval);
            func(); 
        }
    }, 1000);
}

doWhenBarIsTrue(function () { alert('true!'); });

setTimeout(function () { bar = true; }, 3000);
于 2012-07-30T10:10:42.450 に答える