javascript数字数组
javascript numerical array
大家好,只是想知道为什么下面的代码会导致NaN?
function multiply(num1,num2){
var total = num1 * num2;
return total;
}
var numbers = Array(10,2);
var results = multiply(numbers);
alert (results);
感谢
使用.apply
来调用函数。
var results = multiply.apply(null, numbers);
.apply
方法调用multiply
函数,但接受Array或类似Array的集合作为第二个参数,并将集合的成员作为单独的参数发送。
仅供参考,.apply
的第一个参数设置调用上下文。我通过了null
,因为您的函数没有使用this
。
如果您决定让multiply
函数采用可变数量的参数,则此技术特别有用。使用.apply
,数组中有多少并不重要。他们将以个人身份通过。
您只向multiply
传递了一个参数。函数num1
内部是一个数组,而num2
是未定义的。
你想做的就是这个,
var result = multiply(numbers[0], numbers[1]);
您将一个数组传递到multiply中,multiply需要2个数字。
当你试图乘以一个数组时,结果是NaN是有意义的,NaN代表不是一个数字。
尝试:
var results = multiply(numbers[0], numbers[1]);
调用数组值时,必须定义数组中的值。
例如:
var numbers = Array(10, 2)
JavaScript将数组计数从0开始,因此numbers[0]
将等于10,numbers[1]
将等于2。
相关文章:
- JavaScript 在数组中查找缺少的数字
- 在javascript数组中分散数字
- 将数组键转换为数字node.js
- 删除JS数组中的最小数字
- 创建具有2个唯一数字的Javascript数组
- Javascript按数字顺序排序()数组
- 如何将数字切成更小的数字以适合我的数组
- Javascript中的非数字索引多维数组
- 指定数组中的元素对,其总和等于特定的目标数字
- 从数组/字符串中删除所有小数和单个数字
- 从数组[Javascript]的总长度中减去一个干净的数字
- 如何获取数组中数字的最大出现次数
- 如何将数字相加并将结果放入数组中
- JS:从数组中查找特定范围内的最低/最高数字
- 返回最大数字的数组
- 将数组中的所有数字组合相加
- 在数组中生成随机数,没有任何重复的数字
- 循环遍历数字和字母数组并仅提取数字
- 给定一个带有数字的数组,我如何编写一个递归函数,当 2 个元素加起来为一个目标时,它会在数组中查找索引
- 如何将数组(数字)加载到谷歌应用脚本 Byte[] 中