首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Javascript -将值递增4。

Javascript -将值递增4。
EN

Stack Overflow用户
提问于 2012-08-01 14:00:58
回答 5查看 15.4K关注 0票数 0

我有个问题。

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

我认为我需要for循环和if条件,但我不知道如何实现它……

示例

结果必须是:

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

谢谢

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2012-08-01 14:03:28

您可以使用一对嵌套的循环来完成此操作:

代码语言:javascript
运行
复制
while (true) {
    for (var x = 0; x <= 20; x += 4) {
        // use x
    }
}

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

编辑

从您的评论来看,您似乎希望以增量方式生成序列,而不是循环生成序列。下面是一个函数,它将返回一个函数,该函数将在每次调用时生成序列的下一个元素:

代码语言:javascript
运行
复制
function makeSequence() {
    var x = 20; // so it wraps to 0 first time
    return function() {
        if (x == 20) { x = 0 }
        else { x += 4 }
        return x;
    }
}

然后您可以像这样使用它(在许多方法中):

代码语言:javascript
运行
复制
var sequence = makeSequence();

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

var x = sequence();
票数 5
EN

Stack Overflow用户

发布于 2012-08-01 14:04:17

这很容易通过加法运算符和模数%的组合来解决。

代码语言:javascript
运行
复制
x = 0;
//loop
x = (x+4)%24; 

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

票数 4
EN

Stack Overflow用户

发布于 2012-08-01 14:05:27

下面的内容会有所帮助

代码语言:javascript
运行
复制
function fnAddVal(val) {
     if (val >= 20)
            return 0;
     else
       return val+4;

}
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11753360

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档