#javascript
#javascript
Вопрос:
Давайте установим:
i = 1;
condition = i < 2; // Users makes this condition, not me.
значение условия равно true;
Теперь небольшое изменение.
i = 3;
И значение условия останется истинным;
Поскольку я «не знаю» условия, есть ли способ, которым я могу повторно проверить значение условия?
Мне нужно что-то, чтобы значение условия стало ложным сразу после установки i = 3; Что мне нужно сделать с переменной ‘condition’, чтобы сделать ее ложной, но помните: я не знаю «условия» (i < 2), потому что это сделают пользователи, а не я.
Комментарии:
1. Не могли бы вы объяснить, о чем вы говорите? Я не уверен, в чем вопрос.
2. Ваш вопрос не имеет смысла.
3. Можете ли вы пояснить, что вы подразумеваете под «Пользователями, выполняющими это условие»? Указывается ли условие в строке? Как и все остальное, чтобы получить логическое условие в реальном времени, вы должны использовать функцию.
4. Этот вопрос имеет для меня смысл…
Ответ №1:
условие должно быть функцией, которая будет оцениваться каждый раз.
вы можете делать такие вещи, как :
var i = 1;
var condition = function() { i < 2 };
if(condition()) {
alert('ok');
}
i=3;
if(!condition()) {
alert('ok');
}
Ответ №2:
Вам просто нужно переоценить и переназначить переменную условия. Я бы сделал это так:
function evaluate(i, condition){
evaluation = i < condition;
return evaluation;
}
i=3;
condition = 2;
conditionMet = evaluate(i, condition);
Теперь, каждый раз, когда вы хотите выполнить повторную оценку, вы просто вызываете evaluate()
.
Комментарии:
1. Пользователь устанавливает условие, а не я.