首页 > 解决方案 > For循环内函数,数组枚举

问题描述

对于我的作业,这段代码有一些困难。

我应该创建两个函数。

  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. 为什么是这样?

标签: javascriptloops

解决方案


console.log对inconsole.log(loopThrough(myArray));的调用只是打印出来undefined。它这样做是因为loopThrough不返回任何东西,所以它默认为undefined.

数组中的元素通过调用calledInLoopin打印出来loopThrough,而 in 又调用console.log.


推荐阅读