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日

相关文章

  • javascript中Date format(js日期格式化)方法小结

    下面我将详细讲解“javascript中Date format(js日期格式化)方法小结”。 简介 Date对象是Javascript同日期相关的对象,它提供了很多方便易用的日期时间操作方法。其中format方法就是在Date对象中提供的一种日期格式化的方法。 语法 Date.format(formatStr) formatStr为日期格式化字符串。常用的格…

    JavaScript 2023年5月27日
    00
  • javascript实现C语言经典程序题

    为了实现C语言经典程序题,我们需要先掌握一些基本概念和语法,包括控制结构、循环、条件语句、函数等。在掌握了这些基础后,我们可以通过JavaScript语言的灵活性和多功能性来实现这些经典的程序题目。 下面就来介绍如何实现一些经典的程序题目: 示例一:求字符串中子串的个数 题目描述:给定一个字符串和它的一个子串,要求在字符串中找到子串出现的次数。 // 方法一…

    JavaScript 2023年5月27日
    00
  • JS支付页面倒计时的实现示例

    下面是“JS支付页面倒计时的实现示例”的完整攻略。 确定倒计时截止时间 在进行倒计时实现前,需要确定倒计时的时间截止点。假设我们的支付页面需要在用户提交订单30分钟后自动关闭,则倒计时截止时间应设置为30分钟之后的时间点。 在JavaScript中,可以使用Date对象来获取当前时间,并通过setMinutes和setSeconds方法来设置倒计时截止时间。…

    JavaScript 2023年6月11日
    00
  • 用原生js做单页应用

    下面我将为大家详细讲解如何用原生JS做单页应用的完整攻略。 什么是单页应用? 单页应用(SPA)是指使用Ajax或Websocket等技术,使得网页只需加载一次,就能实现多个页面的效果。 用原生JS做单页应用的步骤 定义路由 要实现单页应用,首先需要定义路由,以此来控制页面的跳转和展示。可以使用window.history.pushState()方法或者lo…

    JavaScript 2023年6月11日
    00
  • 个人网站留言页面(前端jQuery编写、后台php读写MySQL)

    下面给出关于“个人网站留言页面(前端jQuery编写、后台php读写MySQL)”的完整攻略。 步骤一:数据库设计 首先需要通过设计数据库来存储留言信息。假设我们需要存储“留言者姓名”、“留言内容”、“留言时间”等信息,可以创建一个名为”messageBoard”的MySQL数据库,并在其中新建一个名为”messages”的表来存储留言。 CREATE DA…

    JavaScript 2023年6月11日
    00
  • 通过JavaScript实现动态圣诞树详解

    下面我将详细讲解“通过JavaScript实现动态圣诞树”的攻略。 1. 准备工作 1.1 HTML 首先,在HTML中,我们需要创建一个canvas元素,用于绘制圣诞树。可以按照以下代码创建: <canvas id="canvas"></canvas> 1.2 CSS 接着,在CSS中,我们需要设置canvas元…

    JavaScript 2023年6月11日
    00
  • JavaScript中常见加密解密方法总结

    JavaScript中常见加密解密方法总结 在前端开发中,加密和解密是常用的技术手段之一,它们可以保证前端传递的数据安全性。本文将介绍一些常见的JavaScript加密和解密方法。 Base64编码解码 Base64编码是将二进制数据转化为纯文本的一种编码方式。在前端传递数据时,常常需要对敏感信息进行编码,以保证数据的安全。 以下是一个简单的示例,演示如何使…

    JavaScript 2023年5月19日
    00
  • 使用Jquery实现点击文字后变成文本框且可修改

    下面就是使用 jQuery 实现点击文字后变成文本框且可修改的完整攻略。 实现思路 选中需要被点击变为文本框的元素 给元素绑定 click 事件,点击后将其内容存储在一个变量中,并将元素变为可编辑状态的文本输入框 文本输入框失去焦点时,将新的内容存储在一个变量中,并将文本输入框变为普通的元素 示例代码 HTML 结构 <div class="…

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