如何获得重复模式

时间:2014-11-21 05:44:25

标签: javascript php jquery

我有一个文本框,用户输入整数。然后我想列出数字,直到用户输入的整数。该列表首先是RED,第二个是黄色,第三个是GREEN。这个模式会再次重演......比如第4个是红色,第5个是黄色,第6个是绿色等等。

如果用户输入12.它会像:1(红色),2(黄色),3(绿色),4(红色),5(黄色)......所以on..till 12。

我可以根据EVen和Odd来区分整数,但在这种情况下,我们有3种不同的选项:红色,黄色和绿色。

3 个答案:

答案 0 :(得分:1)

我认为你可以轻松地在循环中生成数字。至于识别模式,你可以简单地做这个检查(伪代码):

  num are values generated from 1 to whatever you want to be.

 (num - 1) % 3 = 0  --> Color should be red
 (num + 1) % 3 = 0  --> Color should be yellow
   num % 3 = 0      --> Color should be green

希望它能让你开始朝着正确的方向前进。

答案 1 :(得分:1)

您要找的是remainder operator

var num = 12;
var list = [],
  colors = ['red', 'green', 'blue'];
for (var i = 0; i < num; i++) {
  list.push('<span class="' + colors[i % colors.length] + '">' + (i + 1) + '</span>')
}

var html = list.join('');
//add it to the dom to view
$('body').append(html);
.red {
  color: red;
}
.green {
  color: green;
}
.blue {
  color: blue;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>

答案 2 :(得分:1)

<?php
        $limit = 10;

        $color =  array('red','yellow','green');

        for($i=0;$i<=$limit;$i++)
             {
              echo "<span style='color:".$color[$i%3]."'>$i</span>";

             }

   ?>