我想将while的条件指定为变量,例如:
function doWhile(condition){
while(condition){
number++;
}
alert(number);
}
var number = 1;
doWhile(number < 10);
答案 0 :(得分:4)
执行此操作的唯一方法是使用函数。
function doWhile(condition, action, undefined) {
var current = undefined;
// call your condition with the current value
while(condition(current)) {
// do something with the current value then update it
current = action(current);
}
return result;
}
var number = doWhile(function condition(number) {
// if the current value has no value yet continue
// if the current value is less than 10
return number === undefined || number < 10;
}, function action(number) {
// if the number has no value set it to 0
if (number === undefined) {
number = 0;
}
// increase it
return ++number;
});
console.log(number);