广告
返回顶部
首页 > 资讯 > 前端开发 > JavaScript >Vue如何获取两个时间点之间的所有间隔时间
  • 522
分享到

Vue如何获取两个时间点之间的所有间隔时间

2024-04-02 19:04:59 522人浏览 安东尼
摘要

目录获取两个时间点之间的所有间隔时间获取两个时间之间的 间隔时间获取两个日期之间的间隔日期获取指定两个月份之间的 间隔月份获取两个时间点之间的所有间隔时间 说明 使用的是Vue@2.

获取两个时间点之间的所有间隔时间

  • 说明 使用的是Vue@2.6.12和elementUI@2.14.1
  • 使用的是TS,用来校验数据格式
  • 所有返回的数据都是在时间前面自动补全了0
  • 使用的主要方法是new Date().setFullYear()设置当前的时间,如果传入的时间是new Date().setFullYear(2020,12,32),该方法会自动将时间转化为2021-1-1的时间戳 **如果有一个参数超出了合理的范围,setFullYear 方法会更新其他参数值,日期对象的日期值也会被相应更新。 例如,为 monthValue指定 15, 则年份会加1,月份值会为3 ** MDN说明

获取两个时间之间的 间隔时间


export function getBetweenTime(startTime: string, endTime: string): Array<string> {
    // 校验时间格式
    if (typeof startTime === 'string' && typeof endTime === 'string') {
        const reg = /^(0?[1-9]|([1-2][0-4])):(([0-5][0-9])(:([0-9][0-9]))?)$/
        if (!reg.test(startTime)) throw `开始时间:${startTime} 时间格式错误`
        if (!reg.test(endTime)) throw `结束时间:${endTime} 时间格式错误`
    } else throw `${startTime} 或者 ${endTime} 时间格式错误`
    let start: number = +startTime.split(':')[0]
    let end: number = +endTime.split(':')[0]
    const resultTime: string[] = []
    // 当 开始时间小于结束时间的时候进入循环
    while (start <= end) {
        // 拼接时间格式 自动给 小于10的时间前面补0
        let setTime = start >= 10 ? `${start}:00` : `0${start}:00`
        resultTime.push(setTime)
        // 重新设置开始时间
        start += 1
    }
    return resultTime
}

获取两个日期之间的间隔日期


export function getBetweenDate(
    startTime: Date | number | string,
    endTime: Date | number | string
): Array<string> {
    // 校验时间格式
    if (typeof startTime === 'string') {
        const reg = /^\d{4}-(0?[1-9]|1[0-2])-((0?[1-9])|((1|2)[0-9])|30|31)$/g
        if (!reg.test(startTime)) throw `开始时间:${startTime}时间格式错误`
    }
    if (typeof endTime === 'string') {
        const reg = /^\d{4}-(0?[1-9]|1[0-2])-((0?[1-9])|((1|2)[0-9])|30|31)$/g
        if (!reg.test(endTime)) throw `结束时间:${endTime}时间格式错误`
    }
    let start: Date = new Date(startTime)
    let end: Date = new Date(endTime)
    const resultTime: string[] = []
    // 当 开始时间小于结束时间的时候进入循环
    while (start <= end) {
        let getDay = start.getDate()
        // 月份需要加 1
        let getMonth = start.getMonth() + 1
        let getYear = start.getFullYear()
        
        let setTime =
            `${getYear}-` +
            (getMonth >= 10 ? `${getMonth}` : `0${getMonth}`) +
            '-' +
            (getDay >= 10 ? `${getDay}` : `0${getDay}`)
        resultTime.push(setTime)
        
        start = new Date(start.setFullYear(getYear, getMonth - 1, getDay + 1))
    }
    return resultTime
}

获取指定两个月份之间的 间隔月份


export function getBetweenMonth(
    startTime: Date | number | string,
    endTime: Date | number | string
): Array<string> {
    // 校验时间格式
    if (typeof startTime === 'string') {
        const reg = /^\d{4}-(0?[1-9]|1[0-2])$/g
        if (!reg.test(startTime)) throw `开始时间:${startTime}时间格式错误`
    }
    if (typeof endTime === 'string') {
        const reg = /^\d{4}-(0?[1-9]|1[0-2])$/g
        if (!reg.test(endTime)) throw `结束时间:${endTime}时间格式错误`
    }
    let start: Date = new Date(startTime)
    let end: Date = new Date(endTime)
    const resultTime: string[] = []
    // 当 开始时间小于结束时间的时候进入循环
    while (start <= end) {
        // 月份需要加 1
        let getMonth = start.getMonth() + 1
        let getYear = start.getFullYear()
        
        let setTime = `${getYear}-` + (getMonth >= 10 ? `${getMonth}` : `0${getMonth}`)
        resultTime.push(setTime)
        
        start = new Date(start.setFullYear(getYear, getMonth))
    }
    return resultTime
}

获取两个年份时间点 之间的间隔年份


export function getBetweenYear(
    startTime: Date | number | string,
    endTime: Date | number | string
): Array<string> {
    // 校验时间格式
    if (typeof startTime === 'string') {
        const reg = /^\d{4}$/g
        if (!reg.test(startTime)) throw `开始时间:${startTime}时间格式错误`
    }
    if (typeof endTime === 'string') {
        const reg = /^\d{4}$/g
        if (!reg.test(endTime)) throw `结束时间:${endTime}时间格式错误`
    }
    let start: Date = new Date(startTime)
    let end: Date = new Date(endTime)
    const resultTime: string[] = []
    // 当 开始时间小于结束时间的时候进入循环
    while (start <= end) {
        let getYear = start.getFullYear()
        // 拼接时间格式
        let setTime = `${getYear}`
        resultTime.push(setTime)
        
        start = new Date(start.setFullYear(getYear + 1))
    }
    return resultTime
}

以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程网。

--结束END--

本文标题: Vue如何获取两个时间点之间的所有间隔时间

本文链接: https://www.lsjlt.com/news/165542.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Vue如何获取两个时间点之间的所有间隔时间
    目录获取两个时间点之间的所有间隔时间获取两个时间之间的 间隔时间获取两个日期之间的间隔日期获取指定两个月份之间的 间隔月份获取两个时间点之间的所有间隔时间 说明 使用的是vue@2....
    99+
    2022-11-13
  • Go获取两个时间点时间差的具体实现
    目录获取当前时间及其秒、毫秒、纳秒数获取两个时间点时间差代码获取指定时间前的时间 获取指定时间后的时间获取当前时间及其秒、毫秒、纳秒数 now := time.Now() ...
    99+
    2022-11-13
  • 获取两个日期间隔时间的shell脚本代码
    #!/bin/sh# 获取所在季度的第一天,到昨天的日期间隔# link:www.lsjlt.com# date:2013/2/28 day=`date -d "1 days ago " "+%Y%m%d...
    99+
    2022-06-04
    脚本 间隔时间 日期
  • shell脚本获取两个日期间隔时间的方法
    这篇文章主要介绍“shell脚本获取两个日期间隔时间的方法”,在日常操作中,相信很多人在shell脚本获取两个日期间隔时间的方法问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”shell脚本获取两个日期间隔时间...
    99+
    2023-06-09
  • MySQL DATEDIFF函数获取两个日期的时间间隔的方法
    描述 返回两个日期之间的时间间隔。 语法 DateDiff(interval, date1, date2 [ ,firstdayofweek[ , firstweekofyear]] ) DateDiff 函...
    99+
    2022-05-12
    MySQL DATEDIFF日期时间间隔 MySQL DATEDIFF时间间隔
  • 如何计算CDS view里两个时间戳之间的天数间隔
    ABAP透明表里的时间戳,数据类型为dec: 有个需求:计算这两个时间戳之间的天数间隔,丢弃时间戳年-月-日8位后面的小时:分钟:秒。 举个例子:如果时间戳是2018091817313...
    99+
    2022-10-18
  • java获取两个日期之间的所有日期
      获取日期的过程: 首先创建一个数组,然后在数组的末尾加上一个日期。当我们有两个日期时,可以把这两个日期当做是不同的数组,然后使用 next函数把这两个日期之间的所有时间都获取出来。 2、代码演示: 3、实现效果: 在 java中,获取...
    99+
    2023-09-04
    java jvm 数据结构
  • python如何求两个时间的时间差
    这篇文章主要介绍“python如何求两个时间的时间差”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“python如何求两个时间的时间差”文章能帮助大家解决问题。计算两个时间的时间差:from ...
    99+
    2023-07-04
  • PHP获取时间戳、获取天周月的起始时间、指定时间所在周、指定时间的各个周等相关函数
    目录 一、时间戳和日期互相转换 二、PHP获取今日、昨日、上周、本周、上月、本月的起始时间戳 三、获取当前周的每天的起始时间 四、获取周的起始时间 1、根据指定时间获取所在周的起始时间和结束时间 2、通过时间戳 获取某周的开始时间和结束时间...
    99+
    2023-09-01
    php
  • mysql如何获取时间整点
    目录mysql获取时间整点1.获取当天整点时间2.当前时间往前推的时间点总结mysql获取时间整点 1.获取当天整点时间 SELECT * FROM ( SELECT DATE_FORMAT(...
    99+
    2023-02-07
    mysql获取时间整点 mysql获取时间 mysql获取整点时间
  • sql如何查询两个时间段之间的数据
    SQL查询两个时间段之间的数据可以使用`BETWEEN`关键字。以下是一个示例查询语句:```sqlSELECT * FRO...
    99+
    2023-09-13
    sql
  • MySQL 中如何计算两个时间值之间的差异?
    借助 TIMEDIFF() MySQL 函数,可以计算两个时间值之间的差异。示例mysql> Select TIMEDIFF('04:05:45','03:05:45') AS ‘Diffe...
    99+
    2023-10-22
  • js如何获取当天24点的时间
    这篇文章将为大家详细讲解有关js如何获取当天24点的时间,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。js获取当天24点的时间new Date(new ...
    99+
    2022-10-19
  • 哪个标点符号可以用作 MySQL 时间部分之间的分隔符?
    与日期值的情况一样,MySQL 也允许我们使用宽松的时间格式。我们可以在时间部分之间使用任何标点符号作为分隔符。一些示例如下 -mysql> Select timestamp('2017-10-20 04+05+36'...
    99+
    2023-10-22
  • java如何获取两个日期之间的天数
    在Java中,可以使用`java.time.LocalDate`类来获取两个日期之间的天数。以下是一个示例代码:```javaimp...
    99+
    2023-09-14
    java
  • 如何获取站点的各类响应时间
    这篇文章主要讲解了“如何获取站点的各类响应时间”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何获取站点的各类响应时间”吧!有时候为了测试网络情况,需要返回每个阶段的耗时时间,比如DNS解析...
    99+
    2023-06-09
  • php中的时间戳如何获取
    本篇内容介绍了“php中的时间戳如何获取”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!为了实现任何时间相关的功能,必须要用到时间戳。在PHP...
    99+
    2023-07-05
  • php如何取出一个时间段内每个月的开始时间和结束时间存入到数组中
    这篇文章主要为大家展示了“php如何取出一个时间段内每个月的开始时间和结束时间存入到数组中”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“php如何取出一个时间段...
    99+
    2022-10-19
  • 如何用php获取下月的时间戳
    这篇文章主要讲解了“如何用php获取下月的时间戳”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何用php获取下月的时间戳”吧!首先,我们需要获取当前时间戳,可以使用PHP内置的time()...
    99+
    2023-07-05
  • php如何获取几天后的时间戳
    本篇内容介绍了“php如何获取几天后的时间戳”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!在php中,可以使用strtotime()函数获取...
    99+
    2023-06-21
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作