2016-09-09 13 views
-4

質問

私はfirebaseで作業しており、ネイティブに反応しています。配列内のオブジェクトキーの合計を計算する方法 - javascript

firebaseデータベースからこのような配列が返されました。

[Object, Object, Object] 

各オブジェクトの下で、「レベル:4」という単一のアイテムが返されました。

私は4,5,6を含む3つのオブジェクトを持っています。これらをどのようにまとめますか?

ありがとうございます!

+3

配列をループして、プロパティを読み込み、追加します。 – epascarello

+0

Hey gbland777。 StackOverflowへようこそ。あなたはおそらくあなたの質問にいくつかdownvotesがあることに気づいたように。これを防ぐ1つの方法は、(あなたの質問で)[問題を再現する最小限のコード](http://stackoverflow.com/help/mcve)を提供することです。これにより、あなたの記述から逆追跡しようとするのではなく、あなたが間違っている(または明確化が必要な)ことを見るためにあなたのコードをチェックすることができます。これは、人々が手助けする方法にとってより効率的です。あなたが私たちのために作るのが簡単になればなるほど、助けを得る可能性が高くなります。 :-) –

答えて

3

単純なループのどちらか

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

または還元

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

配列内のオブジェクトにアクセスしてプロパティを呼び出そうとしましたか?

var array = [object, object, object]; 
var sum = array[0].level + array[1].level + array[2].level; 
0

Array.prototype.forEach()メソッドを使用して配列を繰り返し、要素を合計します。

{ level : 4 }

コードを記述し、このように、私たちはあなたの配列がvar foo = [object, object, object]objectは、このような構造を持っているとしましょう:

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

sumは、合計を格納する

0

このコードは、アレイの合計を計算します。まず、1つの変数を宣言します。この変数の名前はsumになります。 sumには合計の合計が含まれます。次にArraynumbers変数を宣言します。この変数には数字が含まれます。

次に、sum変数に(sum= sum+i);の値を代入するループ(for)演算を開始します。 次に、数字と合計を(document.write)に示します。

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

申し訳ありません私は新しいstackoverflowだと私はコードのどの部分が記述されているかわからないので、私はナレーションでそれを書いた –

関連する問題