js日期相关函数总结分享

yizhihongxing

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类型转换示例

    下面我将为你详细讲解“javascript类型转换示例”的完整攻略,包含两个示例说明。 JavaScript类型转换示例 在JavaScript中,类型转换是一个非常重要的概念。在编写JavaScript代码时,我们可能会遇到需要进行类型转换的情况。下面,我将为您介绍两个JavaScript类型转换示例。 示例1: 首先,我们来看一个JavaScript类型…

    JavaScript 2023年5月28日
    00
  • js中.sort()函数的常见用法与高级操作

    让我们来具体讲解一下 JavaScript 中数组的 .sort() 方法吧。 基本用法 .sort() 方法用于对数组进行排序,它可以带一个可选的排序函数作为参数,用于控制排序规则。 默认的排序规则是将元素转换成字符串后进行比较,然后按照 Unicode 码点排序。比如,对于以下数组: const arr = [10, 5, 8, 3, 2]; 如果我们调…

    JavaScript 2023年5月19日
    00
  • JavaScript判断变量是否为数组的方法(Array)

    JavaScript提供了多种方法来判断一个变量是否为数组。下面是两种常见的方式: 1. 使用Array.isArray()方法 Array.isArray()是ES5中添加的一个方法,用于判断一个变量是否为数组类型。它接受一个参数,该参数可以是任何类型的变量,如果是数组,则返回true;否则返回false。 var arr = [1, 2, 3]; con…

    JavaScript 2023年5月27日
    00
  • javascript七大数据类型详解

    JavaScript 七大数据类型详解 引言 在 JavaScript 中,它支持七种基本的数据类型,这些数据类型分为两大类:原始类型和引用类型。了解这些数据类型对于你理解 JavaScript 中的数据存储和操作至关重要。在本篇文章中,我们将对这七种数据类型进行详细的解释以及举例说明。 原始数据类型 原始数据类型有五种,包括 undefined、null、…

    JavaScript 2023年5月27日
    00
  • 利用jsonp解决js读取本地json跨域的问题

    解决JS读取本地JSON跨域的问题,通常需要使用JSONP技术。JSONP是一种跨域技术,利用标签的src属性不受同源策略限制,可以跨域请求数据。下面我将为大家演示利用JSONP来解决JS读取本地JSON跨域的问题的完整攻略。 什么是JSONP JSONP,全称为JSON with Padding,是一种跨域技术,利用了\标签不受同源策略限制的特性,可以跨域…

    JavaScript 2023年5月27日
    00
  • 6种javascript显示当前系统时间代码

    以下是关于“6种JavaScript显示当前系统时间代码”的详细攻略。 概述 在网页中显示当前系统时间是一项常见的需求,JavaScript提供了多种方法来实现这个目标。本文将介绍6种不同的实现方法,并提供示例代码。 方法1: JavaScript Date对象 JavaScript Date对象是处理日期和时间的常用对象,可以获取当前日期和时间。下面是获取…

    JavaScript 2023年5月27日
    00
  • Javascript闭包与函数柯里化浅析

    JavaScript 闭包与函数柯里化是 JavaScript 中非常重要且常见的概念,对于想要成为一名 JavaScript 开发工程师来说是必不可少的。下面将分别详细讲解闭包和函数柯里化的概念和原理,并提供两个示例来说明它们的用法和效果。 JavaScript 闭包 闭包是通过函数访问其被定义时的词法作用域(决定变量作用域的范围)的能力。简单来说,闭包就…

    JavaScript 2023年6月10日
    00
  • asp.net动态添加js文件调用到网页的方法

    ASP.NET 动态添加 JS 文件调用到网页主要有以下几个步骤: 首先,在 ASP.NET 页面中添加 ScriptManager 控件。这个控件可以将页面上的 JS 文件或脚本框架统一管理。 示例代码如下: <asp:ScriptManager ID="ScriptManager1" runat="server&quo…

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