Javascript:将数组中的数据插入到函数参数中

时间:2017-07-09 14:44:56

标签: javascript arrays function variables

我只学习了2个星期的javascript,如果我的问题看起来很奇怪/没有意义,那么道歉。我正在学习数组的基础知识,并帮助我学习我喜欢练习和玩代码,但我似乎无法想出这个。

我创建了一个简单的函数,并希望调用函数来计算数组中变量的总和。以下是我的代码:

//functions

function simpleCalc (a,b) {
    var result = a + b;
    return result;
}

//array

var myArray = [12,567];

//final calculation

var total = simpleCalc([0],[1]);

alert("The total is " + total);

任何人都可以了解我如何在功能参数中输入数字“12”和“567”?这里的结果是输出为“01”

由于

3 个答案:

答案 0 :(得分:5)

您有两种选择:

  1. 您的选择但是,它仅限于两个值。
  2. 您需要将引用传递给数组元素,如(myArray[0], myArray[1])

    1. 创建新功能 - 让我们称之为sumValuesInArray(),传递array并使用for循环计算数组内的所有值。
    2. 请参阅此处的工作示例:

      
      
      //functions
      
      function simpleCalc (a,b) {
          var result = a + b;
          return result;
      }
      
      //array
      
      var myArray = [12,567];
      
      //final calculation
      
      var total = simpleCalc(myArray[0],myArray[1]);
      
      //alert("The total is " + total);
      
      
      // OR
      
      function sumValuesInArray(array) {
        var total = 0;
        
        for(i = 0; i < array.length; i++) {
          var element = array[i];
          
          total += element;
        }
        
        return total;
      }
      
      console.log(sumValuesInArray(myArray));
      &#13;
      &#13;
      &#13;

答案 1 :(得分:1)

您不指定数组,只指定索引:

var total = simpleCalc([0],[1]);

因此,它传递了两个数组对象:[0][1]

他们在这里连接起来:

var result = a + b;

结果是01字符串。

要传递myArray的两个第一个元素,请尝试:

var total = simpleCalc(myArray[0],myArray[1]);

答案 2 :(得分:0)

您需要按索引访问数组值。您可以使用带有数组名称的括号来执行此操作。如果您将括号中的数字传递给内部,则需要创建新数组。

应该是:

{{1}}