JS把字符串格式的时间转换成几秒前、几分钟前、几小时前、几天前等格式

转换字符串格式的时间为类似“几秒前”、“几分钟前”、“几小时前”、“几天前”等格式,通常需要先将字符串格式的时间转换成时间戳,然后获取当前时间戳与字符串格式时间戳之间的差值,最后根据差值计算出对应的时间差,即可得到所需的格式化时间。

以下是完整的攻略:

步骤一:将字符串时间转换成时间戳

在JS中可以使用Date对象将字符串格式的时间转换成时间戳,具体代码如下:

var timestamp = new Date('2021/08/23 15:00:00').getTime();

这个例子中,将字符串格式的时间'2021/08/23 15:00:00'转换成了时间戳,存储在变量timestamp中。

步骤二:获取当前时间戳并计算时间差

获取当前时间戳可以使用JS中的Date对象的getTime()方法,代码如下:

var currentTimestamp = new Date().getTime();
var diff = currentTimestamp - timestamp;

这里的diff变量存储了当前时间戳与字符串时间戳之间的差值。

步骤三:计算时间差并输出格式化时间

计算时间差时,可以根据差值算出对应的秒、分钟、小时、天数等,然后输出格式化的时间。

以下是一个例子,其中timestamp表示要格式化的字符串格式的时间对应的时间戳:

function formatTime(timestamp) {
  // 获取当前时间戳
  var currentTimestamp = new Date().getTime();
  // 计算时间差
  var diff = currentTimestamp - timestamp;
  // 计算相差的秒数
  var seconds = Math.floor(diff / 1000);
  // 计算相差的分钟数
  var minutes = Math.floor(seconds / 60);
  // 计算相差的小时数
  var hours = Math.floor(minutes / 60);
  // 计算相差的天数
  var days = Math.floor(hours / 24);

  // 输出格式化时间
  if (seconds < 60) {
    return seconds + '秒前';
  } else if (minutes < 60) {
    return minutes + '分钟前';
  } else if (hours < 24) {
    return hours + '小时前';
  } else {
    return days + '天前';
  }
}

// 测试例子,输出格式化时间
console.log(formatTime(new Date('2021/08/23 15:00:00').getTime())); // 输出:4天前

上述例子中,传入的是字符串格式时间'2021/08/23 15:00:00'对应的时间戳,经过计算后输出了格式化时间"4天前"。如果传入的是当前时间戳,则输出格式化时间"刚刚"。

另一个例子,传入的是1970年1月1日00:00:00的时间戳,输出格式化时间"51年前":

console.log(formatTime(0)); // 输出:51年前

这是因为1970年1月1日00:00:00的时间戳为0,到现在(2021年8月27日)已经过了51年。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:JS把字符串格式的时间转换成几秒前、几分钟前、几小时前、几天前等格式 - Python技术站

(0)
上一篇 2023年5月27日
下一篇 2023年5月27日

相关文章

  • 了解一下XSS

    XSS,即跨站脚本攻击(Cross-Site Scripting),是一种常见的网络安全漏洞,攻击者通过在网页中注入恶意脚本代码,使得浏览器执行这些脚本,从而控制网页上的内容或者获取用户的敏感信息。XSS 攻击一般分为反射型、存储型和 DOM 型三种类型。 1. 反射型 XSS 攻击 反射型 XSS 攻击是指攻击者通过向目标网站提交带有恶意脚本代码的请求,使…

    JavaScript 2023年4月25日
    00
  • JavaScript中的时间处理小结

    下面是关于“JavaScript中的时间处理小结”的完整攻略: JavaScript中的时间处理小结 时间格式化 在JavaScript中,我们可以使用Date对象进行时间的处理。Date对象提供了一系列方法,可以方便地进行时间格式化。 下面是一些常用的时间格式化方法: 1. 获取时间戳 getTime()方法可以获取时间戳,时间戳是指从1970年1月1日0…

    JavaScript 2023年5月27日
    00
  • JavaScript知识点总结(十一)之js中的Object类详解

    下面是关于“JavaScript知识点总结(十一)之js中的Object类详解”的详细攻略。 标题 JavaScript知识点总结(十一)之js中的Object类详解 正文 1. Object类的概述 Object类是JavaScript中最常用的类之一,它是所有对象的基类。Object类有很多的内置方法和属性,能够帮助我们更方便地操作和管理JavaScri…

    JavaScript 2023年5月27日
    00
  • JavaScript中cookie工具函数封装的示例代码

    下面是关于“JavaScript中cookie工具函数封装的示例代码”的完整攻略: 关于Cookie Cookie是一个用于Web服务器存储在用户计算机上的小文本文件。当用户在浏览器中访问Web时,服务器可以调用浏览器中存储的Cookie以识别用户。 谷歌浏览器中操作Cookie的步骤 打开Chrome浏览器。 点击右上角的菜单按钮,选择“设置”。 向下滑动…

    JavaScript 2023年6月11日
    00
  • JavaScript将相对地址转换为绝对地址示例代码

    下面是关于JavaScript将相对地址转换为绝对地址的攻略,包含以下四个步骤: 获取当前页面的URL和相对地址。 判断相对地址的类型(同级、下级、上级)。 根据相对地址的类型,将其转换为绝对地址。 使用转换后的绝对地址进行操作。 下面用两个示例来说明具体的实现过程。 示例一:转换同级相对地址为绝对地址 在相同层级的情况下,相对地址一般是以./开头。比如,当…

    JavaScript 2023年6月11日
    00
  • javascript函数命名的三种方式及区别介绍

    对于“javascript函数命名的三种方式及区别介绍”,可以从以下三种方式展开讲解: 第一种方式:函数声明 使用函数声明语句来创建函数,这是最常见的一种函数命名方式,也是最容易理解的方式。 函数声明的基本结构如下: function functionName() { //函数体 } 示例: function greeting() { console.log…

    JavaScript 2023年5月27日
    00
  • 详解Vuex管理登录状态

    详解Vuex管理登录状态 Vuex是一个专门为Vue.js应用程序开发的状态管理库,它能够用来管理整个应用程序的状态。其中包括登录状态的管理。下面将详细讲解如何使用Vuex来管理登录状态。 步骤一:安装Vuex 首先需要使用npm或yarn安装Vuex。使用npm安装的命令如下: npm install vuex –save 步骤二:创建Vuex Stor…

    JavaScript 2023年6月11日
    00
  • JS截取url中问号后面参数的值信息

    下面是关于如何截取URL中问号后面参数值信息的完整攻略。 1. 获取URL并提取参数 首先,需要在 JavaScript 中获取 URL。 可以使用全局对象 window 中的 location 属性获取当前 URL。比如: var url = window.location.href; 得到 URL 后,我们需要提取 URL 中的参数。我们可以使用 URL…

    JavaScript 2023年6月11日
    00
合作推广
合作推广
分享本页
返回顶部