javascript - jQuery 数组乘法

标签 javascript jquery arrays

我有两个不同的数组。我想要通过将每个元素与另一个数组相乘来求数组的总和。例如:

function get_total() {
    var i = 0;
    var arr = [];
    var gift_val_len = $('.gift_value').length;
    $('.gift_value').each(function() {
        arr[i++]= parseFloat($(this).val());  // Or this.innerHTML, this.innerText
    });
    var j = 0;
    var arr1 = [];
    $('.gift_number').each(function() {
        arr1[j++]= parseFloat($(this).val());  // Or this.innerHTML, this.innerText
    });
}

现在有两个不同的数组,例如 arr1=[15, 20, 25],arr2=[1, 3, 5],我想要像 ((15*1) + (20*3) + (25* 5))。我们怎样才能实现这一目标?

最佳答案

您可以使用内置的 .map() 方法,使用纯 JavaScript(无 jQuery)用一行代码来完成此操作:

var arr1=[15, 20, 25], arr2=[1, 3, 5];
var sum = 0;
var arr3 = arr1.map(function(x, index) {
  var curMult = x * arr2[index];
  sum += curMult;
  return curMult;
});
console.log(arr1);
console.log(arr2);
console.log(arr3);
console.log(sum);

这还将对元素求和,如问题中提到的。

注意:数组的长度必须相同,否则代码会崩溃。

关于javascript - jQuery 数组乘法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37299447/

相关文章:

javascript - 单引号字符串中的双引号 - NodeJs

javascript - Node.js 进程在中间退出,没有错误(使用流)

javascript - 如何设置括号及其之间的文本样式?

php - 在 Mysql 数据库中插入动态选择框值并显示数据已提交消息

javascript - 从对象数组中提取属性并存储在另一个对象数组中

javascript - 通过 $parent.$index 和 $index 更新对象 $scope 项

c - 当描述符重叠时,C11 数组初始化的行为是什么?

javascript - 如何从不同的域(谷歌搜索结果)中找出以前的 URL 是什么,或者如果没有以前的 URL?

javascript - 如何使用 CasperJS 选择选项

jquery - jQuery 1.3.2 的可视化 jQuery