我有一个名为fundsBeingSold
的对象。此对象包含Array[]
个名为sliderValueArr
的数字。
如果此数组有三个值..
0: 59
1: 10
2: 12
如何将变量设置为这些值的总和?
由于
答案 0 :(得分:0)
var fundsBeingSold = {
sliderValueArr: [59, 10, 12]
};
var sum = fundsBeingSold.sliderValueArr.reduce(function(a, b) {
return a + b;
});
console.log(sum) // will print the sum 81
答案 1 :(得分:0)
例如:
var total = fundsBeingSold.sliderValueArr.reduce((a, b) => a + b);
答案 2 :(得分:-1)
使用reduce:
var sum = fundsBeingSold.sliderValueArr.reduce(function(a,b){return a+b;},0);
你也可以使用JQuery:
$.each(fundsBeingSold.sliderValueArr,function(){sum+=parseFloat(this) || 0;});
如果你愿意,你也可以添加一个原型来更快地完成它,如下所示:
Array.prototype.sum = function() {
return this.reduce(function(a,b){return a+b;});
}
你会像这样使用它:var mySum = fundsBeingSold.sliderValueArr.sum();
答案 3 :(得分:-1)
您可以使用jQuery.map执行该操作,例如:
let arr = [ 59, 10, 12];
let result = 0;
jQuery.map(arr, function(str, i){
return result += str
})
但你不一定需要jQuery,你可以使用地图也可以使用香草javascript,例如:
let arr = [ 59, 10, 12];
let result = 0;
arr.map(function(str) {
result += str;
}
我希望有所帮助,
布鲁诺
答案 4 :(得分:-1)
你可以这样做:
var fundsBeingSold = {
sliderValueArr: [59, 30, 42]
};
var s = sum();
function sum() {
s = 0;
var i;
for (i = 0; i < fundsBeingSold.sliderValueArr.length ; i++) {
s += fundsBeingSold.sliderValueArr[i];
}
s;
return s;
}
console.log(s);