@1233211

Как получить массив из чисел от и до?

Мне приходит 2 числа, допустим 3 и 9 (второе число всегда больше первого) и нужно получить массив вида [3,4,5,6,7,8,9], но если числа придут 3 и 3, тогда массив такой должен получиться [3]
  • Вопрос задан
  • 1158 просмотров
Решения вопроса 2
0xD34F
@0xD34F Куратор тега JavaScript
const arr = Array.from({ length: max - min + 1 }, (n, i) => i + min);

или

function* range(start, stop, step) {
  if (stop === undefined) {
    stop = start;
    start = 0;
  }

  if (start === stop) {
    step = 1;
  }

  if (step === undefined) {
    step = Math.sign(stop - start);
  }

  if (start <= stop && step > 0 || start >= stop && step < 0) {
    for (let i = start; step < 0 ? i >= stop : i <= stop; i += step) {
      yield i;
    }
  }
}


console.log(Array.from(range(3, 9))); // [3, 4, 5, 6, 7, 8, 9]

console.log([...range(-5)]); // [0, -1, -2, -3, -4, -5]

for (const n of range(100, 200, 33)) {
  console.log(n); // 100  133  166  199
}

const r = range(12, -7, -5);
for (let n; !(n = r.next()).done; ) {
  console.log(n.value); // 12  7  2  -3
}
Ответ написан
Комментировать
@Rerurk
let f1=(a,b)=>{
    let arr=[]
    while (a<=b){
        arr.push(a);
        a++
    }
    return arr;
}
let arr=f1(2,5)  //[ 2, 3, 4, 5 ]
let arr2=f1(3,3)//[3]
console.log(arr)
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@vitalypanchenko1
Циклом.

let massive=[];
function test(a,b){
for(let i = a; i <= b; i++){
massive.push(i);
}
}
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы