重複の可能性:
javascript オブジェクトの配列をソートする方法は?
次のような出力があります。
[ { value: 1, count: 1 }, { value: 2, count: 2 } ]
配列内のハッシュを反復処理してから、カウントが最大の値番号を返す必要があります。単純なようですが、私は少し困惑しています。別の配列を使用して両方の値のセットを保存しようとしましたが、最善の方法がわかりません。
重複の可能性:
javascript オブジェクトの配列をソートする方法は?
次のような出力があります。
[ { value: 1, count: 1 }, { value: 2, count: 2 } ]
配列内のハッシュを反復処理してから、カウントが最大の値番号を返す必要があります。単純なようですが、私は少し困惑しています。別の配列を使用して両方の値のセットを保存しようとしましたが、最善の方法がわかりません。
あなたはこのようなことをすることができます:
var a = [{
value: 1,
count: 1
}, {
value: 2,
count: 2
}, {
value: 7,
count: 8
}, {
value: 5,
count: 0
}, {
value: 10,
count: 3
}];
// sorting using a custom sort function to sort the
// greatest counts to the start of the array
// take a look here: http://www.w3schools.com/jsref/jsref_sort.asp
// to understand how the custom sort function works
// better references can be found
// here: http://es5.github.com/#x15.4.4.11
// and here: https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/sort
a.sort( function( v1, v2 ){
return v2.count - v1.count;
});
for ( var i in a ) {
console.log( a[i] );
}
// the greatest one is the first element of the array
var greatestCount = a[0];
console.log( "Greatest count: " + greatestCount.count );