Задать вопрос
@Crushing

Почему не работает код?

range(15, 10);

function range(a, b) {
	if (a > b) {
		var newArray = [];
		for (var i = b; b < a; i++) {
			newArray.unshift(i);
		}
	}
}

document.write(newArray[1]);


По задумке он должен добавлять в массив все числа от числа b до числа a. (Это начало решения задачи, тут не до конца, но уже столкнулся с проблемой), когда запускаю выкидывает из браузера с лагами :)
  • Вопрос задан
  • 130 просмотров
Подписаться 1 Простой Комментировать
Решения вопроса 3
@RidgeA
Функция ничего не возвращает - ни явно, ни не явно (в глобальную переменную - так делать вообще не стоит).

newArray объявлен внутри функции, там он и остается после ее завершения. Функция должна что-то вернуть.
Ответ написан
Комментировать
Winsik
@Winsik
сис.админ, недопрограммист :)
потому что ваш newArray определён внутри функции, естественно при выходе из неё он автоматически уничтожается за ненадобностью
Ответ написан
Комментировать
JRK_DV
@JRK_DV
Рецепты https://codepen.io/jrkdv/full/LKLXdq
Бесконечный цикл?
В итерации цикла переменные из условия b < a не изменяются
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы
Rocket Смоленск
от 80 000 до 130 000 ₽
Wanted. Москва
от 250 000 до 400 000 ₽
Wanted. Санкт-Петербург
До 220 000 ₽
22 янв. 2025, в 21:33
3000 руб./за проект
22 янв. 2025, в 18:00
15000 руб./за проект
22 янв. 2025, в 17:57
2000 руб./в час