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

Javascript:将数组中的数据插入函数参数,javascript,arrays,function,variables,Javascript,Arrays,Function,Variables,我只学了两周javascript,所以如果我的问题看起来很奇怪/没有意义,我深表歉意。我正在学习数组的基础知识,为了帮助我学习,我喜欢练习和玩代码,但我似乎无法理解这一点 我创建了一个简单的函数,并希望调用该函数来计算数组中变量的总和。下面是我的代码: //functions function simpleCalc (a,b) { var result = a + b; return result; } //array var myArray = [12,567]; //

我只学了两周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”


谢谢,您没有指定数组,只指定索引:

var total = simpleCalc([0],[1]);
因此,它传递两个数组对象:
[0]
[1]

它们在此处的串联:

var result = a + b;
其结果是
01
字符串

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

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

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

应该是:

 var total = simpleCalc(myArray[0],myArray[1]);
您有两个选择:

  • 您的选项,但它仅限于两个值
  • 您需要传递对数组元素的引用,如so
    (myArray[0],myArray[1])

  • 创建新函数-让我们调用它
    sumValuesInArray()
    ,传递一个
    数组
    ,并使用
    for
    循环计算数组中的所有值
  • 请参见此处的工作示例:

    //函数
    函数simpleCalc(a,b){
    var结果=a+b;
    返回结果;
    }
    //排列
    var myArray=[12567];
    //最终计算
    var total=simpleCalc(myArray[0],myArray[1]);
    //警报(“总数为”+总数);
    //或
    函数sumValuesInArray(数组){
    var合计=0;
    对于(i=0;ilog(sumValuesInArray(myArray))第一条语句是否发送2个未命名数组,每个数组中有1个元素?喜欢第一个参数是未命名数组,填充:1,第一个元素值为0第二个参数是未命名数组,第一个元素值为1。哇,它每天都变软了:感谢快速响应。我已经研究了大约一个小时了,我想我明白了。因此,基本上你在这里所做的不是使用我的版本,它是自我限制的,你的版本允许你添加尽可能多或尽可能少的数组变量,JavaScript仍然可以运行,而无需你修改更多的代码?@Bayzoo,就是这样。数组中可以有任意数量的元素。一切都会计算出来。但请记住,必须插入正确的值<代码>“22”
    22
    不同,区别在于类型不同<代码>“22”是
    字符串的类型,但
    22
    数字的类型。初学者在数字中加字符串是常见的错误。例如,从
    输入中获取
    ,并尝试求和。从
    输入
    中获取的任何
    都将是
    字符串类型
    。若要将字符串转换为数字,请使用
    parseInt()
    当您确定值始终为intenger或
    parseFloat()
    @Bayzoo另一种将字符串转换为数字的解决方案是一元运算符
    +
    。你可以用谷歌搜索。如果我的回答对你合适,请接受它。