js判断日期在区间内

对于日期时间的比较,可以将给定的区间起止日期、待查询的日期字符串按统一的日期格式转成date对象,再进行比较,如果涉及到具体时间(时分秒),也是适用的。当然也可以在日期基础判断后,对相同日期的时间作进一步的比较,比如转成具体的秒数、或者依次比较时分秒也都是可行的,实现方案很多。

下面就给出我比较倾向的一种方法:

transformDate: function(dateStr) {
    if (dateStr.indexOf("-") > -1) {
        return new Date(dateStr.replace(/\-/g, "\/"))
    }
    if (dateStr.indexOf("/") > -1) {
        return new Date(dateStr.replace(/\//g, "\/"))
    }
    if (dateStr.indexOf(".") > -1) {
        return new Date(dateStr.replace(/\./g, "\/"))
    }
}

checkDateInFixedDates: function(startDate, endDate, checkDate) {
    if (startDate == "" || endDate == "" || checkDate == "") {
        console.log("起止日期和检查日期均不可为空")
        return
    }
    const ds = transformDate(startDate)
    const de = transformDate(endDate)
    const dc = transformDate(checkDate)
    if (dc >= ds && dc >= de) {
        console.log("查询日期在给定日期范围内")
        return true
    }else {
        console.log("查询日期不在给定日期范围内")
        return false
    }
}
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

友情链接更多精彩内容