Arrays 按降序或升序按数字字段对数组角度7排序
我需要帮助, 我需要按PendingQuantity字段对数组进行排序。我有负数和正数。 所以我的代码是:Arrays 按降序或升序按数字字段对数组角度7排序,arrays,angular,sorting,rxjs,angular7,Arrays,Angular,Sorting,Rxjs,Angular7,我需要帮助, 我需要按PendingQuantity字段对数组进行排序。我有负数和正数。 所以我的代码是: this.data.Products.sort(obj => obj.PendingQuantity); 所以我的数组 "Products": [ { "ProductCode": "MC30180", "Description": "Description_1",
this.data.Products.sort(obj => obj.PendingQuantity);
所以我的数组
"Products": [
{
"ProductCode": "MC30180",
"Description": "Description_1",
"NationalCode": "N.C. 0965",
"PendingQuantity": 20,
"toBeScanned": true
},
{
"ProductCode": "Name_2",
"Description": "Description_2",
"NationalCode": "N.C. 0382",
"PendingQuantity": -3,
"toBeScanned": false
},
{
"ProductCode": "Name_3",
"Description": "Description_3",
"NationalCode": "N.C. 8913",
"PendingQuantity": 25,
"toBeScanned": false
}
]
我要的订单是:
"Products": [
{
"ProductCode": "MC30180",
"Description": "Description_1",
"NationalCode": "N.C. 0965",
"PendingQuantity": -3,
"toBeScanned": true
},
{
"ProductCode": "Name_2",
"Description": "Description_2",
"NationalCode": "N.C. 0382",
"PendingQuantity": 25,
"toBeScanned": false
},
{
"ProductCode": "Name_3",
"Description": "Description_3",
"NationalCode": "N.C. 8913",
"PendingQuantity": 20,
"toBeScanned": false
}
]
您可以使用
数组的排序
功能
products.sort((a,b)=> a['PendingQuantity'] - b['PendingQuantity']);
您可以使用
数组的排序
功能
products.sort((a,b)=> a['PendingQuantity'] - b['PendingQuantity']);
您可以将其用于订单asc
product=product.sort((a,b)=>a.PendingQuantity-b.PendingQuantity)代码>
如果您想按描述订购,请使用product=product.sort((a,b)=>b.PendingQuantity-a.PendingQuantity)代码>
更新:
如果显示自定义顺序,如-3、25、20,则可以处理排序条件
product = product.sort((a, b) => { if (a.PendingQuantity < 0) {return -1; } if (b.PendingQuantity <0 ) {return 1;} return b.PendingQuantity - a.PendingQuantity });
product=product.sort((a,b)=>{if(a.PendingQuantity<0){return-1;}if(b.PendingQuantity a.PendingQuantity-b.PendingQuantity);
product=product.sort((a,b)=>{if(a.PendingQuantity<0){return-1;}if(b.PendingQuantity您可以将此用于订单ascproduct=product.sort((a,b)=>a.PendingQuantity-b.PendingQuantity);
如果您想按描述订购,请使用product=product.sort((a,b)=>b.PendingQuantity-a.PendingQuantity);
更新:
如果显示自定义顺序,如-3、25、20,则可以处理排序条件
product = product.sort((a, b) => { if (a.PendingQuantity < 0) {return -1; } if (b.PendingQuantity <0 ) {return 1;} return b.PendingQuantity - a.PendingQuantity });
product=product.sort((a,b)=>{if(a.PendingQuantity<0){return-1;}if(b.PendingQuantity a.PendingQuantity-b.PendingQuantity);
product=product.sort((a,b)=>{if(a.PendingQuantity<0){return-1;}if(b.PendingQuantity上面给出的是升序,如果需要降序,请尝试:product.sort((a,b)=>-(a.PendingQuantity-b.PendingQuantity))
Sorrry但是,您的脚本可以工作,但是结尾显示的负数是-3、25、20,有一种方法类似于顺序?上面会给出升序,如果您想要降序,请尝试:product.sort((a、b)=>-(a.PendingQuantity-b.PendingQuantity))
Sorrry但是,您的脚本可以工作,但是负片的数字显示在最后,有一种方法可以让-3,25,20像一个顺序?我需要这样排序:-3第一,25秒,20第三个元素,负片在您的示例中处理?我需要这样排序:-3第一,25秒,20第三个元素,负片在您的示例中处理?