使用javascript将时间转换成今天,昨天,前天等格式

下面是使用 JavaScript 将时间转换成“今天”,“昨天”,“前天”等格式的攻略:

1. 获取时间戳

首先需要获取要转换的时间戳。时间戳是一个整数,表示自1970年1月1日 00:00:00 UTC起经过的毫秒数。可以使用 JavaScript 中的Date对象的getTime()方法获取当前时间的时间戳,如下所示:

const timestamp = new Date().getTime();

2. 转换成日期格式

将时间戳转换成日期格式,可以使用Date对象的toLocaleDateString()方法。该方法将日期对象转换为字符串,格式为本地日期格式。例如:

const date = new Date(timestamp).toLocaleDateString();
console.log(date); // 输出:"2022/3/4"

3. 计算日期差值

接下来,需要计算当前日期与要转换的日期之间的差值,以便确定转换的时间是“今天”,“昨天”,“前天”等。可以使用下列代码段计算日期差值:

const now = new Date().setHours(0, 0, 0, 0); // 当前时间的开始
const compare = new Date(timestamp).setHours(0, 0, 0, 0); // 需要比较的日期的开始
const diff = (now - compare) / 1000 / 60 / 60 / 24; // 计算出两个日期之间的天数差值

4. 根据日期差值转换

使用上述代码段计算出日期差值后,接下来就可以根据差值的不同转换成相应的日期格式了。下面是完整的 JavaScript 代码,其中使用了一个getDateDiff()函数,接受一个时间戳参数,并返回转换后的字符串:

function getDateDiff(timestamp) {
  const now = new Date().setHours(0, 0, 0, 0);
  const compare = new Date(timestamp).setHours(0, 0, 0, 0);
  const diff = (now - compare) / 1000 / 60 / 60 / 24;

  if (diff === 0) {
    return "今天";
  } else if (diff === 1) {
    return "昨天";
  } else if (diff === 2) {
    return "前天";
  } else {
    const date = new Date(timestamp);
    const year = date.getFullYear();
    let month = date.getMonth() + 1;
    month = month < 10 ? "0" + month : month;
    let day = date.getDate();
    day = day < 10 ? "0" + day : day;
    return `${year}/${month}/${day}`;
  }
}

const timestamp1 = 1646488312345;
console.log(getDateDiff(timestamp1)); // 输出:"今天"

const timestamp2 = 1646217600000;
console.log(getDateDiff(timestamp2)); // 输出:"前天"

在上面的代码中,分别使用了两个时间戳作为示例,分别输出了“今天”和“前天”的转换结果。可以根据需要将上述代码与自己的项目结合使用。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:使用javascript将时间转换成今天,昨天,前天等格式 - Python技术站

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

相关文章

  • js 自带的sort() 方法全面了解

    JS自带的sort()方法全面了解 在JS中,sort()方法是对数组元素进行排序的内置方法。它可以帮助我们轻松地将数组按照一定的顺序进行排序。在这里,我们将详细讲解sort()方法的使用,包括语法、参数、返回值、排序顺序等。 语法 sort()方法的基本语法如下: array.sort(compareFunction); 其中,array 表示要排序的数组…

    JavaScript 2023年5月19日
    00
  • 利用jquery制作滚动到指定位置触发动画

    介绍 利用jQuery制作“滚动到指定位置触发动画”可以为网站增添一份优雅。本攻略将介绍如何利用jQuery添加让元素滚动到指定位置时触发动画的代码。 步骤 步骤 1:添加jQuery链接 首先需要在 HTML 文件中添加 jQuery 链接。这里我们使用的是来自 jQuery 官网的链接: <script src="https://code…

    JavaScript 2023年6月11日
    00
  • javascript 的Document属性和方法集合

    来讲解一下“javascript 的Document属性和方法集合”的完整攻略。 1. Document属性 1.1 title属性 title属性用于获取或修改HTML文档的标题。例如: // 查看当前文档标题 console.log(document.title); // 修改当前文档标题 document.title = "新标题"…

    JavaScript 2023年6月10日
    00
  • DIV常见任务(下) —变身为编辑器及div的各种diy应用

    DIV常见任务(下) —变身为编辑器及div的各种diy应用 简介 在网页开发中,DIV是使用最多的元素之一,除了常规的布局外,DIV还可以通过一些diy的方式实现更多的功能,如编辑器、拖拽、手势识别等。本文将介绍DIV的一些diy应用,供读者学习参考。 DIV变身为编辑器 通过一些技巧和库,我们可以将DIV变身为一个简单的富文本编辑器,而无需使用第三方的J…

    JavaScript 2023年6月11日
    00
  • js正则表达式中test,exec,match方法的区别说明

    JS正则表达式是一种用于匹配字符串模式的工具,包括test、exec和match等方法可以用于匹配模式并返回匹配结果。这三种方法的用途和返回结果略有不同。我们来详细讲解一下这三种方法的区别说明。 1. test方法 test() 是正则表达式对象的一个方法,用于检测一个字符串是否匹配某个正则表达式。其返回值是一个布尔值,如果匹配成功返回 true,否则返回 …

    JavaScript 2023年6月10日
    00
  • three.js绘制地球、飞机与轨迹的效果示例

    下面是关于”three.js绘制地球、飞机与轨迹的效果示例”的完整攻略。 简介 three.js是一款基于WebGL的JavaScript 3D渲染库,可以用来制作3D场景、动画等效果。在制作3D场景中,绘制地球、飞机与轨迹是比较常见的需求。本文将讲述如何使用three.js实现绘制地球、飞机与轨迹效果。 步骤 1. 准备工作 首先,我们需要引入three.…

    JavaScript 2023年6月11日
    00
  • 详解JavaScript的定时器

    下面是详解JavaScript的定时器的完整攻略: 什么是JavaScript定时器 JavaScript定时器是用来控制代码在指定的时间间隔内执行的方法。它们是非常有用的,可以用于制作动画、轮播图、定时更新时间等。JavaScript中有两种类型的定时器:setInterval()和setTimeout()。 setInterval() setInterv…

    JavaScript 2023年5月27日
    00
  • 在web worker中使用fetch实例详解

    下面是针对“在web worker中使用fetch实例详解”的完整攻略: 什么是Web Worker Web Worker是一项Web技术,它是一种能够让JavaScript代码在浏览器后台运行的机制。通过Web Worker,可以让一部分长时间运行的JavaScript代码运行在单独的线程中,而不会阻塞UI线程的运行,从而提高了JavaScript的执行效…

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