Для цикла внутри функции, перечисление массива - PullRequest
0 голосов
/ 24 июня 2018

Возникли некоторые трудности с этим кодом для моего задания.

Я должен создать две функции.

  1. первая функция называется calledInLoop, которая примет один параметр и зарегистрирует параметр.

    calledInLoop = function (parameter) {
        console.log(parameter);
    }
    
  2. вторая функция называется loopThrough, которая будет принимать массив, проходить через каждый из них и вызывать функцию calledInLoop. В результате каждый элемент массива должен быть зарегистрирован в консоли.

    loopThrough = function (array) {
        for (var i = 0; i < array.length; i++){
            calledInLoop(array[i]);
        };
    }
    
    myArray = ['dog', 'bird', 'cat', 'gopher'];
    

console.log(loopThrough(myArray)); возвращает каждый элемент в отдельной строке console.log, но затем возвращает undefined. Почему это?

Ответы [ 2 ]

0 голосов
/ 24 июня 2018

Ваша функция loopThrough не возвращает никакого значения при вызове.Следовательно, его возвращаемое значение не определено.

loopThrough = function (array) { 
       for (var i = 0; i < array.length; i++) 
             calledInLoop(array[i])
       return 1
 } 

Теперь это вернет вам 1. Аналогично вы можете вернуть любые другие значения.

0 голосов
/ 24 июня 2018

Вызов console.log в console.log(loopThrough(myArray)); - это только распечатка undefined. Это происходит потому, что loopThrough ничего не возвращает, поэтому по умолчанию используется undefined.

Элементы в массиве печатаются путем вызова calledInLoop в loopThrough, что в свою очередь вызывает console.log.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...