在jquery中跳过循环中的数字

Posted

技术标签:

【中文标题】在jquery中跳过循环中的数字【英文标题】:Skip numbers in loop in jquery 【发布时间】:2017-02-09 18:36:45 【问题描述】:

所以我得到了以下代码:

var lowMin      = 01;
var highMin     = 59;

var minuteList  = [];

for (var i = lowMin; i <= highMin; i++) 
    minuteList  .push(i);
   

我想要的是在 1 到 59 之间创建一个如下所示的数组: [5, 10, 15, 20, 25, 30] 以此类推,直到 59。

【问题讨论】:

【参考方案1】:

IMO,您可以简单地使用Modulus (%),即i%5

// Will evaluate to true if the variable is divisible by 5
variable % 5 === 0 

// Will evaluate to true if the variable is divisible by 2
variable % 2 === 0 

//For your example.
if(i%5 == 0)

   minuteList.push(i);

var lowMin      = 01;
var highMin     = 59;

var minuteList  = [];

for (var i = lowMin; i <= highMin; i++) 
    if(i%5 == 0)
    
       minuteList.push(i);
    
  
console.log(minuteList);
&lt;script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"&gt;&lt;/script&gt;

【讨论】:

这将在 80% 的时间内进行迭代,除了模数测试之外什么都不做。【参考方案2】:

您可以让循环变量以 5 为步长,确保它从 5 的倍数开始:

var lowMin      = 01;
var highMin     = 59;
var minuteList  = [];

for (var i = Math.ceil(lowMin/5)*5; i <= highMin; i+=5) 
  minuteList.push(i);


console.log(minuteList);

【讨论】:

【参考方案3】:

试试这个:

    var lowMin      = 01;
    var highMin     = 59;
    var step = 5;
    
    var minuteList  = [];
    
    for (var i = step; i <= highMin; i+=step) 
        minuteList  .push(i);
    
    
    console.log(minuteList);  
    

    

【讨论】:

以上是关于在jquery中跳过循环中的数字的主要内容,如果未能解决你的问题,请参考以下文章

为啥 .setValue() 在 for 循环中跳过列?

如何从sql中跳过一行?

Scanf 在循环中跳过(Hangman)

如何在循环中跳过项目

如何在 ddd (gdb) 中跳过过去的循环

使用 CSV 文件在循环中跳过第一行(字段)? [复制]