• js获取昨天,最近7天,最近30天通用方法


     1 function formatDate (val) {
     2   // 格式化时间
     3   let start = new Date(val)
     4   let y = start.getFullYear()
     5   let m = (start.getMonth() + 1) > 10 ? (start.getMonth() + 1) : '0' + (start.getMonth() + 1)
     6   let d = start.getDate() > 10 ? start.getDate() : '0' + start.getDate()
     7   return y + '-' + m + '-' + d
     8 }
     9 
    10 function mistiming (sDate1, sDate2) {
    11   // 计算开始和结束的时间差
    12   let aDate, oDate1, oDate2, iDays
    13   aDate = sDate1.split('-')
    14   oDate1 = new Date(aDate[1] + '-' + aDate[2] + '-' + aDate[0])
    15   aDate = sDate2.split('-')
    16   oDate2 = new Date(aDate[1] + '-' + aDate[2] + '-' + aDate[0])
    17   iDays = parseInt(Math.abs(oDate1 - oDate2) / 1000 / 60 / 60 / 24)
    18   return iDays + 1
    19 }
    20 
    21 function countDate (start, end) {
    22   // 判断开始和结束之间的时间差是否在90天内
    23   let days = mistiming(start, end)
    24   let stateT = days > 90 ? Boolean(0) : Boolean(1)
    25   return {
    26     state: stateT,
    27     day: days
    28   }
    29 }46 
    47 function timeForMat (count) {
    48   // 拼接时间
    49   let time1 = new Date()
    50   time1.setTime(time1.getTime() - (24 * 60 * 60 * 1000))
    51   let Y1 = time1.getFullYear()
    52   let M1 = ((time1.getMonth() + 1) > 10 ? (time1.getMonth() + 1) : '0' + (time1.getMonth() + 1))
    53   let D1 = (time1.getDate() > 10 ? time1.getDate() : '0' + time1.getDate())
    54   let timer1 = Y1 + '-' + M1 + '-' + D1 // 当前时间
    55   let time2 = new Date()
    56   time2.setTime(time2.getTime() - (24 * 60 * 60 * 1000 * count))
    57   let Y2 = time2.getFullYear()
    58   let M2 = ((time2.getMonth() + 1) > 10 ? (time2.getMonth() + 1) : '0' + (time2.getMonth() + 1))
    59   let D2 = (time2.getDate() > 10 ? time2.getDate() : '0' + time2.getDate())
    60   let timer2 = Y2 + '-' + M2 + '-' + D2 // 之前的7天或者30天
    61   return {
    62     t1: timer1,
    63     t2: timer2
    64   }
    65 }
    66 
    67 function yesterday (start, end) {
    68   // 校验是不是选择的昨天
    69   let timer = timeForMat(1)
    70   return timer
    71 }
    72 
    73 function sevenDays () {
    74   // 获取最近7天
    75   let timer = timeForMat(7)
    76   return timer
    77 }
    78 
    79 function thirtyDays () {
    80   // 获取最近30天
    81   let timer = timeForMat(30)
    82   return timer
    83 }
    84 
    85 export {
    86   formatDate,
    87   countDate,89   yesterday,
    90   sevenDays,
    91   thirtyDays
    92 }
  • 相关阅读:
    任务调度~Quartz.net实现简单的任务调试
    编译器错误~写JS还是谨慎点好
    编译器错误~不能向ObjectStateManager添加相同的键
    EF架构~将数据库注释添加导入到模型实体类中
    c++ pair类型
    Adobe dreamweaver 5.5安装过程
    c++函数作为参数传递
    c++ vector.clear()
    动态规划之装配线调度问题
    转:VS后缀名详解
  • 原文地址:https://www.cnblogs.com/songdongdong/p/7251254.html
Copyright © 2020-2023  润新知