首页 > 解决方案 > 创建一个将所有数字推送到数组的范围函数

问题描述

我正在创建一个函数,它将参数中的数字从开始到结束添加到数组中。我已经完成了这一点,但是该函数在结束数字之外添加了一些数字。我可能在这里把事情复杂化了......

function range(start, end){

  let numbersArray = [];
 
  let counter = 0;
  
  while(counter < end){
    counter++
    
    if (counter < end){
    numbersArray.push(start++)}
 
    };
  return numbersArray
};

console.log(range(4, 11));
//[4, 5, 6, 7, 8, 9, 10, 11, 12, 13]

标签: javascriptarraysnumbersrangepush

解决方案


在你的情况下,counter一开始必须是 equal start。因为不需要变量counter,可以使用start

function range(start , end){
  let numbersArray = [];
  while(start <= end){ 
    numbersArray.push( start );
    start += 1;
  };

  return numbersArray
};

但是while会导致永恒的循环,所以最好使用这个答案


推荐阅读