我正在尝试对数组进行排序。我正在尝试按“itemCommodity”进行排序。我只需要先按数字排序,然后再按字母排序。例如:
1000
A120
B330
2020年
J954
5000
应显示为:
1000
2020年
5000
A120
B330
J954
我希望有人可以帮助我。我在下面尝试了一个示例,但未按预期工作。
var product_data = [{
"itemCommodity": "1000",
},
{
"itemCommodity": "B330",
},
{
"itemCommodity": "A120",
},
{
"itemCommodity": "J954",
},
{
"itemCommodity": "5000",
},
{
"itemCommodity": "2020",
}]
product_data.sort(function(a, b) {
return a.itemCommodity - b.itemCommodity;
});
请注意,itemCommodity不是数组中唯一的对象。我大约有40个不同的对象,只是尝试对itemCommodity进行排序。
最佳答案
您可以尝试像这样比较它们
product_data.sort(function(a, b) {
return a.itemCommodity > b.itemCommodity;
});
如果您想对字母顺序进行排序,则可以尝试
product_data.sort(function(a, b) {
return a.itemCommodity.toLowerCase() > b.itemCommodity.toLowerCase();
});