重复数字限制,然后循环它

时间:2015-01-25 18:40:44

标签: javascript jquery

我想在jQuery中执行此操作:

var limit=3;

if input is 1 ==> the output is 1;
if input is 2 ==> the output is 2;
if input is 3 ==> the output is 3;
//after the limit (in this example 3)
if input is 4 ==> the output is 1;
if input is 5 ==> the output is 2;
if input is 6 ==> the output is 3;
//again
if input is 7 ==> the output is 1;
if input is 8 ==> the output is 2;
if input is 9 ==> the output is 3.
...

我使用了do-while循环,但我希望有更好的(就行数而言)函数。

非常感谢

的Fabio

2 个答案:

答案 0 :(得分:2)

您正在寻找模运算符,它返回除法的余数。

var x = val % 3;

唯一的区别是,如果它是0(作为3 % 3 == 0

,您将要为该值添加3
var x = val % 3;
if (val == 0) 
    val = 3;

您可以使用函数使此代码更通用/更有用。

function looped_number(number, limit) {
    var val = number % limit;
    if (val == 0) 
        val = limit;
    return val;
}

您还可以使用逻辑||运算符使上述代码更简洁。

function looped_number(number, limit) {
    return number % limit || limit;
}

答案 1 :(得分:0)

试试这个:

output = input % limit || limit ;