js计算某个时间距离现在有几年几月几日几分几秒之前的方法

本文主要是介绍js计算某个时间距离现在有几年几月几日几分几秒之前的方法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

数据类型

使用js时间戳
console.log(Date.now()) //1642471441587
或者转化为时间戳才能使用
Date.parse(“2022/1/18 10:05”) //1642471500000
将时间戳转化成时间格式的方法如下–链接查看
https://mp.weixin.qq.com/s?__biz=MjM5MDA2MTI1MA==&mid=2649121025&idx=2&sn=aff0bf6598f07e6b93f20134b1cfac89&chksm=be5846ac892fcfba7a9c382850cf8783d54d4fe8498843b14957d2bba79fdf39f6cd640c66f5&scene=27

代码

时间戳与正常时间了解了之后就上代码


function get_time_diff(time) {var diff = '';var time_diff = new Date().getTime() - time;// 计算相差年数var years = Math.floor(time_diff / (365 * 24 * 3600 * 1000));if (years > 0) {diff += years + '年';} else {// 计算相差月数var months = Math.floor(time_diff / (30 * 24 * 3600 * 1000));if (months > 0) {diff += months + '月';} else {// 计算相差天数 var days = Math.floor(time_diff / (24 * 3600 * 1000));if (days > 0) {diff += days + '天';} else {// 计算相差小时数 var leave1 = time_diff % (24 * 3600 * 1000);var hours = Math.floor(leave1 / (3600 * 1000));if (hours > 0) {diff += hours + '小时';} else {// 计算相差分钟数 var leave2 = leave1 % (3600 * 1000);var minutes = Math.floor(leave2 / (60 * 1000));if (minutes > 0) {diff += minutes + '分';} else {// 计算相差秒数 var leave3 = leave2 % (60 * 1000);var seconds = Math.round(leave3 / 1000);if (seconds > 0) {diff += seconds + '秒';}}}}}}return diff;
}

其实这个也是抄的 我改了改 改成如果一天前就不显示时分秒这种的了
礼貌贴原文链接
https://juejin.cn/post/6844903704810749965

测试代码

const now = new Date().getTime();// Test cases
const result1 = get_time_diff(now - 2 * 24 * 3600 * 1000);
const result2 = get_time_diff(now - 2 * 3600 * 1000);
const result3 = get_time_diff(now - 2 * 60 * 1000);
const result4 = get_time_diff(now - 2 * 1000);// Assertion
assert.strictEqual(result1, '2天');
assert.strictEqual(result2, '2小时');
assert.strictEqual(result3, '2分');
assert.strictEqual(result4, '2秒');

结果
在这里插入图片描述

这篇关于js计算某个时间距离现在有几年几月几日几分几秒之前的方法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

Python中提取文件名扩展名的多种方法实现

《Python中提取文件名扩展名的多种方法实现》在Python编程中,经常会遇到需要从文件名中提取扩展名的场景,Python提供了多种方法来实现这一功能,不同方法适用于不同的场景和需求,包括os.pa... 目录技术背景实现步骤方法一:使用os.path.splitext方法二:使用pathlib模块方法三

Python打印对象所有属性和值的方法小结

《Python打印对象所有属性和值的方法小结》在Python开发过程中,调试代码时经常需要查看对象的当前状态,也就是对象的所有属性和对应的值,然而,Python并没有像PHP的print_r那样直接提... 目录python中打印对象所有属性和值的方法实现步骤1. 使用vars()和pprint()2. 使

CSS实现元素撑满剩余空间的五种方法

《CSS实现元素撑满剩余空间的五种方法》在日常开发中,我们经常需要让某个元素占据容器的剩余空间,本文将介绍5种不同的方法来实现这个需求,并分析各种方法的优缺点,感兴趣的朋友一起看看吧... css实现元素撑满剩余空间的5种方法 在日常开发中,我们经常需要让某个元素占据容器的剩余空间。这是一个常见的布局需求

Python常用命令提示符使用方法详解

《Python常用命令提示符使用方法详解》在学习python的过程中,我们需要用到命令提示符(CMD)进行环境的配置,:本文主要介绍Python常用命令提示符使用方法的相关资料,文中通过代码介绍的... 目录一、python环境基础命令【Windows】1、检查Python是否安装2、 查看Python的安

Python并行处理实战之如何使用ProcessPoolExecutor加速计算

《Python并行处理实战之如何使用ProcessPoolExecutor加速计算》Python提供了多种并行处理的方式,其中concurrent.futures模块的ProcessPoolExecu... 目录简介完整代码示例代码解释1. 导入必要的模块2. 定义处理函数3. 主函数4. 生成数字列表5.

C++ 函数 strftime 和时间格式示例详解

《C++函数strftime和时间格式示例详解》strftime是C/C++标准库中用于格式化日期和时间的函数,定义在ctime头文件中,它将tm结构体中的时间信息转换为指定格式的字符串,是处理... 目录C++ 函数 strftipythonme 详解一、函数原型二、功能描述三、格式字符串说明四、返回值五

Maven 配置中的 <mirror>绕过 HTTP 阻断机制的方法

《Maven配置中的<mirror>绕过HTTP阻断机制的方法》:本文主要介绍Maven配置中的<mirror>绕过HTTP阻断机制的方法,本文给大家分享问题原因及解决方案,感兴趣的朋友一... 目录一、问题场景:升级 Maven 后构建失败二、解决方案:通过 <mirror> 配置覆盖默认行为1. 配置示

SpringBoot排查和解决JSON解析错误(400 Bad Request)的方法

《SpringBoot排查和解决JSON解析错误(400BadRequest)的方法》在开发SpringBootRESTfulAPI时,客户端与服务端的数据交互通常使用JSON格式,然而,JSON... 目录问题背景1. 问题描述2. 错误分析解决方案1. 手动重新输入jsON2. 使用工具清理JSON3.

使用jenv工具管理多个JDK版本的方法步骤

《使用jenv工具管理多个JDK版本的方法步骤》jenv是一个开源的Java环境管理工具,旨在帮助开发者在同一台机器上轻松管理和切换多个Java版本,:本文主要介绍使用jenv工具管理多个JD... 目录一、jenv到底是干啥的?二、jenv的核心功能(一)管理多个Java版本(二)支持插件扩展(三)环境隔

Java中Map.Entry()含义及方法使用代码

《Java中Map.Entry()含义及方法使用代码》:本文主要介绍Java中Map.Entry()含义及方法使用的相关资料,Map.Entry是Java中Map的静态内部接口,用于表示键值对,其... 目录前言 Map.Entry作用核心方法常见使用场景1. 遍历 Map 的所有键值对2. 直接修改 Ma