gpt4 book ai didi

javascript - 选定日期随机排序,查找最早和最晚的

转载 作者:行者123 更新时间:2023-12-01 01:31:10 25 4
gpt4 key购买 nike

我还有很多日子:

let days = [ 'monday', 'tuesday', 'wednesday', 'thursday', 'friday', 'saturday', 'sunday' ]

显然上面的键是从 0 到 6。我使用这些天来生成一个列表,然后用户可以从此列表中选择和取消选择天。因此,如果他们取消选择星期一,然后选择星期日,我现在有一个 selected数组:

let selected = [ 'sunday', 'tuesday', 'wednesday', 'thursday', 'friday', 'saturday' ]

然后我想格式化选定的日期并将其显示给用户,但当然使用下面的代码我会得到周日 - 周六,而我真正想要的是周二 - 周日

let dayOne = this.selected[0];
let dayTwo = this.selected[this.selected.length - 1];

if (dayOne === undefined && dayTwo === undefined) return;

return dayOne.charAt(0).toUpperCase() + dayOne.slice(1) + ' - ' + dayTwo.charAt(0).toUpperCase() + dayTwo.slice(1);

有什么好的、清晰的方法可以做到这一点?

最佳答案

我的建议:

使用一个简单的整数列表 [0...6] 并使用它。我很确定您有 7 个复选框将工作日名称作为值。请使用数字作为值。

然后,当您需要带有日期名称的数组时,请执行以下操作:

const weekdays = [ 'monday', 'tuesday', 'wednesday', 'thursday', 'friday', 'saturday', 'sunday' ];
let selected = [5,2,4,1]; //unsorted array
selected.sort(); //careful here
let selecteddays = selected.map(d => weekdays[d]);
console.log(selecteddays);

这个sort()可能有问题,必须小心。检查如何正确排序数值数组:How to sort an array of integers correctly

关于javascript - 选定日期随机排序,查找最早和最晚的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53261613/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com