Javascript:如何创建一个值之间有可变间隙的数组?

时间:2019-02-23 21:51:52

标签: javascript arrays

我正在尝试创建一个数组,其值之间具有可变的间隔。

例如:假设我的差距等于15,那么我的数组将是[0,15,30,45,60]。

这是我试图做的,但我无法完成这项工作。

var min_array = 0;
var max_array = 60;
var gap = 15;

var arr = [];

while(min_array < max_array +1){
  arr.push(min_array+gap);
}

console.log(arr);

4 个答案:

答案 0 :(得分:2)

您还必须用min_array来计算gap。否则它将以无限循环结束。

while(min_array < max_array){
  arr.push(min_array+gap);
  min_array += gap;
}

答案 1 :(得分:2)

此外,就像抬起头来一样,JS for loop也可以很容易地做到这一点。
有关文档,请参见this

var arr = [];
for (var i = 0; i <= 60; i+=15) {
    // Parameters: the first argument is your min_array, the next is your max_array, and the final is your gap.
    arr.push(i);
}

答案 2 :(得分:1)

像下面的代码一样编辑代码,代码的问题是它可以一直运行,因此每次运行循环时,您需要增加 min_array 值。

var min_array = 0;
var max_array = 60;
var gap = 15;

var arr = [];

while(min_array < max_array) {
  min_array = min_array+gap
  arr.push( min_array);
}

console.log(arr);

答案 3 :(得分:1)

先前的答案几乎是正确的,但是要包含0,请执行以下操作:

var min_array = 0;
var max_array = 60;
var gap = 15;

var arr = [];

while(min_array <= max_array){
  arr.push(min_array);
  min_array += gap;
}

console.log(arr);  // [0, 15, 30, 45, 60]