JavaScript的排序阵列由两个场 [英] Javascript sort array by two fields
本文介绍了JavaScript的排序阵列由两个场的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
grouperArray.sort(功能(A,B){
VAR A大小= a.gsize;
VAR BSIZE = b.gsize;
VAR aLow = a.glow;
无功击= b.glow;
的console.log(aLow +|+击);
返回(asize的< BSIZE)? -1:(A大小> BSIZE)? 1:0;
});
所以上面的code排序由gsize阵列 - 从最小到最大。它的工作原理好。
但是,如果gsize是一样的我会把它想那么排序的光芒。
感谢。
解决方案
grouperArray.sort(功能(A,B){
VAR A大小= a.gsize;
VAR BSIZE = b.gsize;
VAR aLow = a.glow;
无功击= b.glow;
的console.log(aLow +|+击); 如果(A大小== BSIZE)
{
返回(aLow<打击)? -1:(aLow>打击)? 1:0;
}
其他
{
返回(asize的< BSIZE)? -1:1;
}
});
grouperArray.sort(function (a, b) {
var aSize = a.gsize;
var bSize = b.gsize;
var aLow = a.glow;
var bLow = b.glow;
console.log(aLow + " | " + bLow);
return (aSize < bSize) ? -1 : (aSize > bSize) ? 1 : 0;
});
So the above code sorts the array by gsize - smallest to largest. It works good. But if the gsize is the same I would like it to then sort by glow.
Thanks.
解决方案
grouperArray.sort(function (a, b) {
var aSize = a.gsize;
var bSize = b.gsize;
var aLow = a.glow;
var bLow = b.glow;
console.log(aLow + " | " + bLow);
if(aSize == bSize)
{
return (aLow < bLow) ? -1 : (aLow > bLow) ? 1 : 0;
}
else
{
return (aSize < bSize) ? -1 : 1;
}
});
这篇关于JavaScript的排序阵列由两个场的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文