【发布时间】:2018-08-28 12:08:09
【问题描述】:
有下一个数组(例如):
[
['Tue', 'Fri'],
['Mon'],
['Mon', 'Thu', 'Sun'],
['Wed', 'Thu', 'Sun'],
['Tue', 'Wed']
]
我需要对其进行排序以获得下一个:
[
['Mon'],
['Mon', 'Thu', 'Sun'],
['Tue', 'Wed'],
['Tue', 'Fri'],
['Wed', 'Thu', 'Sun']
]
并不表示数组中的天数可以是多少-如果大于1,则其他应分别排序到其在周中的位置索引。
这样的排序功能如何实现?谢谢。
【问题讨论】:
-
你卡在哪里了?我看到一个编程问题没有尝试解决它。 SO 不是为您工作的地方
-
你能改变数据集的结构吗?您可以使用一些键值对来代替数组吗?这样,每一天都可以有一个与其在一周中的位置相对应的索引。
-
JavaScript 中数组的排序是通过Array.prototype.sort完成的
-
@FNTNBWIH 是的,我可以以任何方式更改数据集的结构,但我不知道哪个更好。实际上提供的结构已经改变 - 原来我只有几天的位掩码。
-
@vol7ron 我坚持实现排序功能,该功能将尊重我所描述的排序规则。我试图解决它给每一天的权重,但如果我们有
Mon, Sut和Tue, Wed,这将不起作用。假设每天都有它的权重等于它的指数。Mon + Sut给出 5,Tue + Wed给出 3,意思是Tue, Wed应该在Mon, Sut之前,但这是错误的。
标签: javascript arrays sorting date days