Javascript 使用内联函数对对象数组进行数字排序
我有一个js对象数组,我需要根据区域h*w进行排序。也就是说,每个对象都有{h,w}。我没有得到排序数组 我有一个数组,如图所示Javascript 使用内联函数对对象数组进行数字排序,javascript,arrays,sorting,numbers,Javascript,Arrays,Sorting,Numbers,我有一个js对象数组,我需要根据区域h*w进行排序。也就是说,每个对象都有{h,w}。我没有得到排序数组 我有一个数组,如图所示 var块=[]; 推({ w:320, h:135 }); 推({ w:320, h:270 }); 推({ w:320, h:135 }); 推({ w:320, h:135 }); 推({ w:320, h:135 }); 块。排序(函数(a,b){ 回报率(b.w*b.h
var块=[];
推({
w:320,
h:135
});
推({
w:320,
h:270
});
推({
w:320,
h:135
});
推({
w:320,
h:135
});
推({
w:320,
h:135
});
块。排序(函数(a,b){
回报率(b.w*b.h log(JSON.stringify(blocks))代码>使用-
操作符:
blocks.sort(function(a, b) {
return b.w * b.h - a.w * a.h;
});
如果排序的回调返回:
- 一个负数,然后
sort
将a
置于b
0
,则a
和b
相等,并且sort
将决定谁在谁之前
- 一个正数,然后
sort
将b
置于a
之前
注意:上述代码按降序对数组进行排序,如果要反转排序顺序,则只需返回a.w*a.h-b.w*b.h
。使用-
操作符:
blocks.sort(function(a, b) {
return b.w * b.h - a.w * a.h;
});
如果排序的回调返回:
- 一个负数,然后
sort
将a
置于b
0
,则a
和b
相等,并且sort
将决定谁在谁之前
- 一个正数,然后
sort
将b
置于a
之前
注意:上述代码按降序对数组进行排序,如果要反转排序顺序,则只需返回a.w*a.h-b.w*b.h
。您需要使用减号运算符,请检查此代码段
var块=[]
推({
w:320,
h:135
});
推({
w:320,
h:270
});
推({
w:320,
h:135
});
推({
w:320,
h:135
});
推({
w:320,
h:135
});
块。排序(函数(a,b){
报税表(b.w*b.h-a.w*a.h);
});
控制台日志(块)代码>您需要使用减号运算符,请检查此代码段
var块=[]
推({
w:320,
h:135
});
推({
w:320,
h:270
});
推({
w:320,
h:135
});
推({
w:320,
h:135
});
推({
w:320,
h:135
});
块。排序(函数(a,b){
报税表(b.w*b.h-a.w*a.h);
});
控制台日志(块)代码>