0
我一整天都在閱讀類似的帖子,但無法弄清楚如何通過多個屬性對我的javascript數組進行排序。 我的數組有'名稱'和'類型'屬性。 按名稱排序我現在用:通過Javascript中的多個屬性對對象數組排序
byNameDesc.sort(function (a, b) {
var x = a.name.toLowerCase();
var y = b.name.toLowerCase();
return y < x ? -1 : y > x ? 1 : 0;
});
很好用。我想增強這個功能。如果'name'是'foo',它應該總是在最上面。我也想按'類型'排序。 所以'foo'應該總是在上面,然後按'name'和'type'排序。
我嘗試這樣做:
byNameDefault.sort(function (a, b) {
if (a.name == 'foo') {
return -1;
}
var x = a.type.toLowerCase();
var y = b.type.toLowerCase();
return x < y ? -1 : x > y ? 1 : 0;
});
但沒有奏效。
我不知道如何按'名稱'和'類型'進行排序。
任何幫助,非常感謝。
謝謝您的回答和解釋。我現在明白我在做什麼;) –