js日期相关函数总结分享

JS日期相关函数总结分享

简介

日期在前端开发中非常常见,JavaScript原生提供了许多日期相关的函数,本文将会总结下这些相关函数。

获取Date对象

获取Date对象可以使用以下几个方式:

new Date()

使用new Date()方式获取Date对象,可以获取当前日期时间。

const now = new Date(); // 获取当前日期
console.log(now); // 输出当前日期时间

new Date('2019-07-01')

可以通过传递字符串的方式,获取指定日期时间的Date对象。

const date = new Date('2019-07-01'); // 获取 2019年7月1日 的Date对象
console.log(date); // 输出 2019年7月1日

new Date(2019, 6, 1)

可以通过传递整数的方式,获取指定日期时间的Date对象。需要注意的是,月份从0开始,所以7月实际上是6。

const date = new Date(2019, 6, 1); // 获取 2019年7月1日 的Date对象
console.log(date); // 输出 2019年7月1日

获取日期信息

获取Date对象的相关信息可以使用以下函数:

getFullYear()

获取年份。

const now = new Date();
const year = now.getFullYear();
console.log(year); // 输出当前年份

getMonth()

获取月份,月份从0开始,所以1月实际上是0。

const now = new Date();
const month = now.getMonth();
console.log(month); // 输出当前月份

getDate()

获取月份中的日期。

const now = new Date();
const date = now.getDate();
console.log(date); // 输出当前日期

getDay()

获取星期几,其中0为星期日,1为星期一,以此类推。

const now = new Date();
const day = now.getDay();
console.log(day); // 输出当前星期几

getHours()

获取小时数。

const now = new Date();
const hours = now.getHours();
console.log(hours); // 输出当前小时数

getMinutes()

获取分钟数。

const now = new Date();
const minutes = now.getMinutes();
console.log(minutes); // 输出当前分钟数

getSeconds()

获取秒数。

const now = new Date();
const seconds = now.getSeconds();
console.log(seconds); // 输出当前秒数

getMilliseconds()

获取毫秒数。

const now = new Date();
const milliseconds = now.getMilliseconds();
console.log(milliseconds); // 输出当前毫秒数

日期格式化

日期格式化可以使用以下两个函数:

toDateString()

将Date对象转换为字符串形式的日期。

const now = new Date();
const dateString = now.toDateString();
console.log(dateString); // 输出当前日期,如 Mon Sep 13 2021

toJSON()

将Date对象转换为JSON格式的日期。

const now = new Date();
const json = now.toJSON();
console.log(json); // 输出 JSON 格式日期,如 2021-09-13T13:12:05.658Z

示例

计算两个日期之间的天数差

function calcDaysBetween(date1, date2) {
  const ONE_DAY = 1000 * 60 * 60 * 24; // 一天含有的毫秒数
  const days = Math.round(Math.abs((date1 - date2) / ONE_DAY));
  return days;
}

const date1 = new Date('2022-01-01');
const date2 = new Date('2022-01-20');
const daysBetween = calcDaysBetween(date1, date2);

console.log(daysBetween); // 输出 19

将一个日期格式化为指定格式的字符串

function formatDate(date, format) {
  const year = date.getFullYear();
  const month = date.getMonth() + 1;
  const dateOfMonth = date.getDate();
  const hours = date.getHours();
  const minutes = date.getMinutes();
  const seconds = date.getSeconds();

  format = format.replace('yyyy', year);
  format = format.replace('MM', month < 10 ? '0' + month : month);
  format = format.replace('dd', dateOfMonth < 10 ? '0' + dateOfMonth : dateOfMonth);
  format = format.replace('HH', hours < 10 ? '0' + hours : hours);
  format = format.replace('mm', minutes < 10 ? '0' + minutes : minutes);
  format = format.replace('ss', seconds < 10 ? '0' + seconds : seconds);

  return format;
}

const now = new Date();
const formatted = formatDate(now, 'yyyy-MM-dd HH:mm:ss');
console.log(formatted); // 输出当前日期时间,如 2021-09-13 21:56:40

以上就是本文的内容,希望对你有所帮助!

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:js日期相关函数总结分享 - Python技术站

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

相关文章

  • JavaScript实现获取dom中class的方法

    实现获取DOM中class的方法,可以使用原生JavaScript中的classList属性,也可以使用jQuery中的选择器方法。 使用原生JavaScript 获取DOM元素节点 javascript var element = document.getElementById(‘elementId’); 获取节点中的class列表 javascript …

    JavaScript 2023年6月10日
    00
  • JS中type=”button”和type=”submit”的区别

    首先我们需要了解这两个type属性的含义以及它们在JavaScript中的作用。 type=”button”:该按钮不会提交表单,它只是一个普通的按钮,可以在点击按钮时执行JavaScript代码。 type=”submit”:该按钮会提交表单并刷新页面,用于将表单数据传递给服务器。 因此,这两个type属性的最大区别是是否会将表单数据提交至服务器。 我们来…

    JavaScript 2023年6月11日
    00
  • JavaScript原始数据类型Symbol的用法详解

    以下是详细讲解“JavaScript原始数据类型Symbol的用法详解”的完整攻略: JavaScript原始数据类型Symbol的用法详解 什么是Symbol Symbol是JavaScript新增的一种原始数据类型,用于表示独一无二的值。Symbol的值是唯一的,即使使用相同的参数创建多个Symbol值,它们也是不相等的。这也是Symbol的主要特点和用…

    JavaScript 2023年5月28日
    00
  • 前端配合后端实现Vue路由权限的方法实例

    下面我将为你详细讲解“前端配合后端实现Vue路由权限的方法实例”的完整攻略。 前言 在实际项目中,我们经常需要对系统菜单和路由进行权限控制。Vue路由权限控制是前端开发中非常常见的一种技术实现,下面我们就来介绍一下前端配合后端实现Vue路由权限的方法实例。 步骤 步骤一:在后端对菜单和路由进行权限控制 在后端实现对菜单和路由的权限控制是本次实现的核心。可以通…

    JavaScript 2023年6月11日
    00
  • 详解用函数式编程对JavaScript进行断舍离

    详解用函数式编程对JavaScript进行断舍离 函数式编程作为一种编程范式,正变得越来越受JavaScript开发者欢迎。它与传统的面向对象编程就像是石头和剪刀一样。让我们来详细了解一下,如何用函数式编程对JavaScript进行“断舍离”。 什么是函数式编程 函数式编程是一种编程模式,它的核心思想是将计算过程视为数学运算,每个函数都是输入一些参数,返回一…

    JavaScript 2023年6月10日
    00
  • 你可能不知道的CORS跨域资源共享

    下面是关于CORS跨域资源共享的详细讲解,希望能对你有所帮助。 CORS是什么 CORS(Cross-Origin Resource Sharing)跨域资源共享,是用来解决跨域访问的一种技术。由于浏览器实行同源策略(Same-Origin Policy),如果一个URL的协议、域名和端口都与当前页面的协议、域名和端口相同,则就是同源;否则就是跨域,跨域请求…

    JavaScript 2023年6月11日
    00
  • div css 实现tabs标签的思路及示例代码

    让我来为你详细讲解如何使用div和CSS实现tabs标签。 一、思路 假设我们需要实现一个tabs标签,首先需要以下几步: 将标签划分为两部分:内容区和导航区; 内容区包含全部标签页的内容,导航区用于切换标签页; 导航区的每个按钮都有一个相对应的标签页,点击导航区的某个按钮可以显示对应的标签页; 显示的标签页需要隐藏其他标签页,以显示当前标签页的内容。 基于…

    JavaScript 2023年6月11日
    00
  • javascript中encodeURI和decodeURI方法使用介绍

    JavaScript 中 encodeURI 和 decodeURI 方法使用介绍 在 JavaScript 中,encodeURI 和 decodeURI 方法可以用于编码和解码 URI,以便在 URL 中传输特殊字符或非 ASCII 字符。本文将详细介绍这两种方法的使用。 encodeURI 方法 encodeURI 可以将 URL 中除了 字母、数字、…

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