我知道里面有 .filter()
过滤一个数组,按照我想要的方式返回它,并且使用很多来搜索,当我们传递我们想要搜索的内容时那个数组。
但是我在过滤这样的日期数组时遇到了问题:
["08:00" "09:00" "10:10" "10:30" "10:50" "11:30" "11:50" "12:00"];
我需要按过去的日期过滤它 我有开始日期和结束日期,例如转到 "09:00 "
和 "11:30 "
它应该返回给我:
["10:10" "10:30" "10:50"]
我在 typescript
中尝试这样做:
1. this.schedules = this.navigation.lineSelected.schedules;
2. this.schedules.filter (item => {
3. item> this.hourNow && item <this.hourFinish
4.});
在第 1 行我得到了我所有的时间,所以在第 2.4 行我过滤了这个数组,但它返回了所有东西给我。
我该怎么做?
翻译我需要的:
我将有两个小时字符串,例如“12:00”和“15:00”,我需要在我的数组中进行比较,因为我需要如上例所示的间隔之间的小时数。
当我说时间时,我在谈论一个字符串,所以我需要比较字符串是否大于“12:00”以下的其他类型字符串不会出现在我的最终数组中,并且字符串更大比“15:00”也不会。
这是我能解释我需要的最好方法,我看不到任何其他解释的选项。简单过滤一个数组
最佳答案
您可以只使用 trim 后的 min
和 max
值来过滤值。
var array = ["08:00", "09:00", "10:10", "10:30", "10:50", "11:30", "11:50", "12:00"],
min = "09:00",
max = "11:30",
result = array.filter(a => a > min && a < max);
console.log(result);
关于javascript - 过滤日期数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47355050/