Javascript - 将值增加4。

时间:2012-08-01 06:00:58

标签: javascript variables increment

我有一个问题。

我需要一个Javascript函数,它将变量值增加(增量)4,当变量值为20时,将变量值设置为0并再次将其递增4,依此类推......

我认为我需要循环和if条件,但我不知道如何实现这个......

实施例

结果必须是:

x = 0;然后x = 4,x = 8,x = 12,x = 16,x = 20,x = 0,x = 4 ....

谢谢

5 个答案:

答案 0 :(得分:5)

您可以使用嵌套的循环对执行此操作:

while (true) {
    for (var x = 0; x <= 20; x += 4) {
        // use x
    }
}

这比使用mod(%)运算符更有效。

修改

从您的评论中,听起来您希望以递增方式生成序列,而不是在循环中生成序列。这是一个函数,它将返回一个函数,每次调用它时都会生成序列的下一个元素:

function makeSequence() {
    var x = 20; // so it wraps to 0 first time
    return function() {
        if (x == 20) { x = 0 }
        else { x += 4 }
        return x;
    }
}

然后你可以像这样使用它(在很多方面):

var sequence = makeSequence();

// and each time you needed the next element of the sequence:

var x = sequence();

答案 1 :(得分:4)

使用加法运算符和模%的组合可以很容易地解决这个问题。

x = 0;
//loop
x = (x+4)%24; 

演示:http://jsbin.com/okereg/1/edit

答案 2 :(得分:2)

以下将有所帮助

function fnAddVal(val) {
     if (val >= 20)
            return 0;
     else
       return val+4;

}

答案 3 :(得分:2)

简单!

x = (x + 4) % 24;

你想要一个无限循环吗?什么?

答案 4 :(得分:1)

你可以尝试这样的循环:

<html>
<body>
<script language="javascript">
int x = 0;
while ( x <= 20 ) 
{
    alert("The number is " + x)
    if ( x >= 20 ) 
    {
        x = 0;
    }
    x += 4;
}
</script>
</body>
</html>