How to calculate sum of object keys in array - javascript

前端 未结 5 1144
甜味超标
甜味超标 2021-02-09 11:50

Question

I am working with firebase and react native.

I have returned an array from my firebase database that looks like this.

[Object, Object,         


        
相关标签:
5条回答
  • 2021-02-09 12:13

    You can use Javascript's reduce function. This is basically the same as @epascarello answer but in ES6 syntax.

    https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/Reduce

    const arr = [{level:2},{level:4},{level:5}]; 
    
    const total = arr.reduce((prev,next) => prev + next.level,0);
    
    console.log(total);
    
    0 讨论(0)
  • 2021-02-09 12:16

    Either a simple loop

    var a = [{level:1},{level:2},{level:3},{level:4}],
            total = 0;
        for (var i=0; i<a.length; i++) {
            total += a[i].level;
        }
    console.log('total', total)

    or reduce

    var a = [{level:1},{level:2},{level:3},{level:4}]
    console.log(a.reduce( function(cnt,o){ return cnt + o.level; }, 0))

    0 讨论(0)
  • 2021-02-09 12:18

    This code will calculate the sum of an array. First, declare one variable; this variable's name will be sum. sum contains the total's sum. Second, declare a numbers variable of type Array. This variable will contain digits.

    Then we start a loop (for) operation, in which we assign to the sum variable the value of (sum= sum+i);. Then we show in (document.write) the numbers and sum.

    var summa = 0 , i ;
    var numbers= [1,2,3,4,5];
    for(i = 0; i <= numbers.length; i++){
        summa=summa+i;
    } 
    document.write(numbers , ": bu reqemlerin cemi " ,"=" , summa);
    
    0 讨论(0)
  • 2021-02-09 12:20

    Have you tried accessing the object in the array and calling the property?

    var array = [object, object, object];
    var sum = array[0].level + array[1].level + array[2].level;
    
    0 讨论(0)
  • 2021-02-09 12:30

    Use Array.prototype.forEach() method to iterate over your array and sum your elements.

    Let us suppose your array is var foo = [object, object, object] Each object has this structure, { level : 4 }

    Write code like this:

    var sum = 0;
    foo.forEach(function(obj){
      sum += obj.level;
    });
    

    sum will store the sum

    0 讨论(0)
提交回复
热议问题