Почему выходит пустой массив? Javascript

96
01 мая 2021, 14:30

Изучаю и практикуюсь на задачнике по Javascript.

Задание №4 такое: Найдите все года от 1 до 2019, сумма цифр которых равна 13. Для этого используйте вспомогательную функцию из предыдущей задачи.

Не пойму почему пустой массив выходит. Вроде задание простое, а видимо, по не знанию, как точно работает Javascript, не могу понять, что не так. Подскажите пожалуйста =)

// Task 3
function getDigits(num) {
    return String(num).split("");
}

function getDigitsSum(num) {
    var sum= 0;
    for (i = 0; i < num.length; i++) {
        sum += Number(num[i]);
    }
    return getDigitsSum(getDigits(num));
}
function summa(n){
    return getDigitsSum(getDigits(n));
}

// Task 4
var arrYear = [];
function yearSum(){
    for(i=1; i<=2019; i++){
        if (summa[i] == 13){
        arrYear.push(i);
        }
    }
    return arrYear;
}
console.log(arrYear);
Answer 1

function getDigits(num) { 
  return String(num).split(""); 
} 
 
 
function getDigitsSum(num) { 
  var sum = 0; 
  for (let i = 0; i < num.length; i++) { //Не просто i = 0, а let i = 0. У меня при первом запуске браузер лёг) 
    sum += +num[i]; 
  } 
 
  return sum; 
} 
 
function summa(n) { 
  return getDigitsSum(getDigits(n)); 
} 
 
 
 
// Task 4 
var arrYear = []; 
 
function yearSum() { 
  for (let i = 1; i <= 2019; i++) { //Тоже самое let i 
 
    if (summa(i) == 13) { // summa(i) (круглые скобки), а не квадратные 
      arrYear.push(i); 
    } 
  } 
  return arrYear; 
} 
console.log(yearSum()); // Запускаем функцию, вы же писали "console.log(arrYear);

READ ALSO
Возможно ли написать конвертер в JPEG на JS?

Возможно ли написать конвертер в JPEG на JS?

Появилась необходимость для веб-приложения сделать конвертер PNG или других форматов в JPEGРаньше с таким не сталкивался, поэтому, возникает...

103
(Js) Выбрасывает этот ерор когда нажимаю на + (inc) и ввожу данные При том что для - (exp) все работает, а код аналогичный

(Js) Выбрасывает этот ерор когда нажимаю на + (inc) и ввожу данные При том что для - (exp) все работает, а код аналогичный

Помогите решить проблему Выбрасывает этот ерор когда нажимаю на + (inc) и ввожу данные При том что для - (exp) все работает, а код аналогичный Vs code проблем...

117
media query для jquery

media query для jquery

Всем привет! Что дописать, чтобы указать, что на планшетах, телефонах (991px, 768px) эта функция не должна работать? Вроде не сложно, но не могу найти...

113
Найти и выделить слово в &lt;textarea&gt;

Найти и выделить слово в <textarea>

Я хочу написать функцию выделения определённого слова в textarea, но не знаю как можно найти координаты этого слова, подскажите пожалуйста выход...

95