JS时间格式转化,获取前十天,后十天,前n天,后n天的具体时间方法

2024-04-27 18:32

本文主要是介绍JS时间格式转化,获取前十天,后十天,前n天,后n天的具体时间方法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

JS时间转化,获取前十天,后十天,前n天,后n天的具体时间方法

1.参数说明:
参数说明
day前后n天 0为当天,正值表示未来n天,负值表示过去n天
fmt时间转化的格式
time传入时间,默认为当前时间
function recentTime(day,fmt,time){ //获取当前时间的毫秒值let now = (time? new Date(time) :new Date()).getTime();// 获取前后n天时间let recent = new Date(now+day*24*60*60*1000)// key:正则匹配表达式,value:对应的时间、日期let fmtObj = {'M+': recent.getMonth()+1, 		//月份'd+': recent.getDate(),  		//日'h+': recent.getHours(), 		//时'm+': recent.getMinutes(),		//分's+': recent.getSeconds(),		//秒}// 获取匹配年份替换if(/(y+)/.test(fmt)){//RegExp.$1 匹配结果,替换成对应的长度。如:yyyy就替换成整个年份2021,yy就替换成后两位21,以此类推fmt = fmt.replace(RegExp.$1,(recent.getFullYear()+'').substr(4-RegExp.$1.length))}for(let key in fmtObj){if(new RegExp(`(${key})`).test(fmt)){//日期,时、分、秒替换,判断fmt是否需要补0,如:yyyy-M-d h:m:s 不补0,yyyy-MM-dd hh:mm:ss 则自动补0fmt = fmt.replace(RegExp.$1,RegExp.$1.length==1 ? fmtObj[key] : ('00'+fmtObj[key]).substr((''+fmtObj[key]).length))}}return fmt
}
2.调用
recentTime(1,'yyyy-MM-dd hh:mm:ss','2022-01-03 00:00:00')
// 2022-01-04 00:00:00
recentTime(0,'yyyy-M-d','2021-04-06')
// 2021-04-06
recentTime(-1,'yyyy-MM-dd hh:mm:ss','2021-04-06 13:52:05')
// 2021-04-05 13:52:05
recentTime(2,'yyyy-MM-dd','2021-04-06 13:52:05')
// 2021-04-08

这篇关于JS时间格式转化,获取前十天,后十天,前n天,后n天的具体时间方法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/941224

相关文章

Java中读取YAML文件配置信息常见问题及解决方法

《Java中读取YAML文件配置信息常见问题及解决方法》:本文主要介绍Java中读取YAML文件配置信息常见问题及解决方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要... 目录1 使用Spring Boot的@ConfigurationProperties2. 使用@Valu

Java 方法重载Overload常见误区及注意事项

《Java方法重载Overload常见误区及注意事项》Java方法重载允许同一类中同名方法通过参数类型、数量、顺序差异实现功能扩展,提升代码灵活性,核心条件为参数列表不同,不涉及返回类型、访问修饰符... 目录Java 方法重载(Overload)详解一、方法重载的核心条件二、构成方法重载的具体情况三、不构

SQL中如何添加数据(常见方法及示例)

《SQL中如何添加数据(常见方法及示例)》SQL全称为StructuredQueryLanguage,是一种用于管理关系数据库的标准编程语言,下面给大家介绍SQL中如何添加数据,感兴趣的朋友一起看看吧... 目录在mysql中,有多种方法可以添加数据。以下是一些常见的方法及其示例。1. 使用INSERT I

Python中反转字符串的常见方法小结

《Python中反转字符串的常见方法小结》在Python中,字符串对象没有内置的反转方法,然而,在实际开发中,我们经常会遇到需要反转字符串的场景,比如处理回文字符串、文本加密等,因此,掌握如何在Pyt... 目录python中反转字符串的方法技术背景实现步骤1. 使用切片2. 使用 reversed() 函

Python中将嵌套列表扁平化的多种实现方法

《Python中将嵌套列表扁平化的多种实现方法》在Python编程中,我们常常会遇到需要将嵌套列表(即列表中包含列表)转换为一个一维的扁平列表的需求,本文将给大家介绍了多种实现这一目标的方法,需要的朋... 目录python中将嵌套列表扁平化的方法技术背景实现步骤1. 使用嵌套列表推导式2. 使用itert

Python使用pip工具实现包自动更新的多种方法

《Python使用pip工具实现包自动更新的多种方法》本文深入探讨了使用Python的pip工具实现包自动更新的各种方法和技术,我们将从基础概念开始,逐步介绍手动更新方法、自动化脚本编写、结合CI/C... 目录1. 背景介绍1.1 目的和范围1.2 预期读者1.3 文档结构概述1.4 术语表1.4.1 核

在Linux中改变echo输出颜色的实现方法

《在Linux中改变echo输出颜色的实现方法》在Linux系统的命令行环境下,为了使输出信息更加清晰、突出,便于用户快速识别和区分不同类型的信息,常常需要改变echo命令的输出颜色,所以本文给大家介... 目python录在linux中改变echo输出颜色的方法技术背景实现步骤使用ANSI转义码使用tpu

Conda与Python venv虚拟环境的区别与使用方法详解

《Conda与Pythonvenv虚拟环境的区别与使用方法详解》随着Python社区的成长,虚拟环境的概念和技术也在不断发展,:本文主要介绍Conda与Pythonvenv虚拟环境的区别与使用... 目录前言一、Conda 与 python venv 的核心区别1. Conda 的特点2. Python v

Spring Boot中WebSocket常用使用方法详解

《SpringBoot中WebSocket常用使用方法详解》本文从WebSocket的基础概念出发,详细介绍了SpringBoot集成WebSocket的步骤,并重点讲解了常用的使用方法,包括简单消... 目录一、WebSocket基础概念1.1 什么是WebSocket1.2 WebSocket与HTTP

Python使用OpenCV实现获取视频时长的小工具

《Python使用OpenCV实现获取视频时长的小工具》在处理视频数据时,获取视频的时长是一项常见且基础的需求,本文将详细介绍如何使用Python和OpenCV获取视频时长,并对每一行代码进行深入解析... 目录一、代码实现二、代码解析1. 导入 OpenCV 库2. 定义获取视频时长的函数3. 打开视频文