javascript - 过滤日期数组

标签 javascript arrays

我知道里面有 .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 后的 minmax 值来过滤值。

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/

相关文章:

javascript - Uncaught ReferenceError : io is not defined

javascript - 使用 Puppeteer 在 Node.js 中同步打印

javascript - 如何使用 AJAX 重新加载 Laravel @includes?

javascript - 控制或分割数组中字符串中 `:`前后的目标和值

javascript - 如何递归地将嵌套数组转换为平面数组?

javascript - 返回 true,破坏 javascript 中的代码

javascript - 带 Angular 动态 iframe 源

python - 如何用空格填充Python numpy chararray?

Javascript 数组对两个对象进行排序(菜鸟)

javascript - 使用 JavaScript 将每个数组元素的首字母大写