Javascript:从给定值

时间:2017-11-29 22:54:57

标签: javascript arrays

我正在尝试计算在给定数组上按比例分配的给定数字的结果比率值。数组长度是随机的。例如

var arr = [45,23,7]
function array(arr){
    var share = 3250.00
    // logic to share the array 
    return array
}

我似乎无法正确分发,我知道既没有Math.sum也没有Math.ration,如果没有遇到复杂的规范化,最好的方法是什么

1 个答案:

答案 0 :(得分:3)

假设您尝试根据数组总和的比例在share成员中按比例分配arr值,这应该可以解决问题:

var arr = [45,23,7];

function ration(arr, share){
    var total = arr.reduce(function(x, y) {
      return x + y;
    });
    return arr.map(function(x) {
      return (x / total) * share;
    });
}

var rationedArr = ration(arr, 3250.00);

我已将共享值分解为参数以使函数更灵活,并重命名函数ration,因为调用它array是一个坏主意。