我有一个字符串数组,除了其中的一部分,它们都是相似的,例如:
["1234 - Active - Workroom",
"1224 - Active - Breakroom",
"2365 - Active - Shop"]
我已经知道要按 ID 号排序我只使用了 JavaScript 函数 .sort()
,但我不知道如何按区域对字符串进行排序(例如:“Workroom等等。”)。
我想得到的是:
["1224 - Active - Breakroom",
"2365 - Active - Shop",
"1234 - Active - Workroom"]
“事件”部分将始终相同。
根据我在网上找到的内容,我必须制作一个 .sort()
重写方法来对其进行排序,但我无法弄清楚在重写方法中我需要更改什么。
最佳答案
给你的例子
var items = [
{ name: "Edward", value: 21 },
{ name: "Sharpe", value: 37 },
{ name: "And", value: 45 },
{ name: "The", value: -12 },
{ name: "Magnetic" },
{ name: "Zeros", value: 37 }
];
items.sort(function (a, b) {
if (a.name > b.name)
return 1;
if (a.name < b.name)
return -1;
// a must be equal to b
return 0;
});
您可以创建 1 个对象来描述您的数据。 例子
data1 = { id : 12123, status:"Active", name:"Shop"}
You can implement your logic in sort().
Return 1 if a > b ;
Return -1 if a < b
Return 0 a == b.
数组会自动排序跟随返回 希望对您有所帮助。
关于JavaScript .sort 覆盖,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23764017/