讓我們設置:的Javascript自動更新狀態值
i = 1;
condition = i < 2; // Users makes this condition, not me.
的狀態值處於真;
現在有點變化。
i = 3;
而且條件值將保持真正;
由於我「不知道」條件,有沒有辦法我可以重新檢查條件的價值?
我需要一些條件值成爲false設置i = 3之後; 我與變量'條件'有什麼關係,使它假,但請記住:我不知道「條件」(我< 2),因爲用戶將它,而不是我。
讓我們設置:的Javascript自動更新狀態值
i = 1;
condition = i < 2; // Users makes this condition, not me.
的狀態值處於真;
現在有點變化。
i = 3;
而且條件值將保持真正;
由於我「不知道」條件,有沒有辦法我可以重新檢查條件的價值?
我需要一些條件值成爲false設置i = 3之後; 我與變量'條件'有什麼關係,使它假,但請記住:我不知道「條件」(我< 2),因爲用戶將它,而不是我。
條件必須是每次評估的函數。
,你可以做這樣的事情:
var i = 1;
var condition = function() { i < 2 };
if(condition()) {
alert('ok');
}
i=3;
if(!condition()) {
alert('ok');
}
完美,工作。謝謝 – BernaMariano
你只需要重新評估和reasign條件變量。我會做這樣的:現在
function evaluate(i, condition){
evaluation = i < condition;
return evaluation;
}
i=3;
condition = 2;
conditionMet = evaluate(i, condition);
,要重估一切的時候,你只需要調用evaluate()
。
用戶提出條件,而不是我。 – BernaMariano
你能解釋一下你在說什麼嗎?我不確定問題是什麼。 – Blender
你的問題沒有意義。 – zellio
你能澄清你的意思是「用戶提出這個條件」嗎?條件是在字符串中指定的嗎?像其他任何事情一樣,爲了獲得實時的邏輯條件,你應該使用一個函數。 –