循环数组从1到5,如果达到5,则重新开始(JavaScript)

时间:2016-02-26 20:57:39

标签: javascript jquery arrays

正如我的问题所说,我如何遍历包含1,2,3,4,5的数组,当达到5时,它再次从1开始。

我想为每个元素添加一个名为g1,g2,g3的类,如下所示:

<div class="myClass g1"></div>
<div class="myClass g2"></div>

等等和第四......当达到g5时,它从g1开始......

问题是这是迭代并在同一元素中添加g1 g2 g3 g4和g5,我想将它们分成每个元素。

到目前为止我的代码:

var addGradient = (function() {
    var $serviceModule = $(".service > .service-module > .service-module-bottom");
    var $array = [1, 2, 3, 4, 5];

    $serviceModule.each(function() {
        var $this = $(this);
        for (var $i = 1; $i < $array.length; $i++) {
            $this.addClass("g" + $array[$i]);
        }
    });
});

2 个答案:

答案 0 :(得分:4)

在这里做一个简单的模数学运算。不需要数组或任何循环,

<a href="/login">

答案 1 :(得分:2)

您可以使用模运算符:

var addGradient = (function() {
    var $serviceModule = $(".service > .service-module > .service-module-bottom");
    $serviceModule.each(function(index) {
        $this.addClass("g" + (index % 5)+1);
    });
});

Modulo给你一个整数,它是除法的其余部分:

  • 5%2 = 1
  • 5%3 = 2

它也可用于循环遍历数组。