JavaScript:Date类型全面解析

yizhihongxing

JavaScript: Date类型全面解析

Date 类型是 JavaScript 中最常用的类型之一,它可以用于日期和时间的操作。这篇文章将全面讲解 Date 类型的相关知识。

创建 Date 对象

可以使用 new 操作符来创建一个 Date 对象,如下面的代码:

const now = new Date();

这个对象将包含当前日期和时间的信息。

另外,Date 构造函数还可以接受一个表示日期和时间的字符串或一个表示自 1970 年 1 月 1 日以来所经过的毫秒数的数字。

例如,下面的代码将创建一个表示 2022 年 1 月 1 日下午 3 点的 Date 对象:

const someDate = new Date('2022-01-01T15:00:00');

如果想要以自 1970 年 1 月 1 日以来的毫秒数为基准来创建 Date 对象,可以使用下面的代码:

const someDate = new Date(1641068400000);

获取日期和时间的各个部分

可以使用 Date 对象的一系列方法来获取日期和时间的各个部分,如下面的代码:

const now = new Date();
const year = now.getFullYear();
const month = now.getMonth();
const date = now.getDate();
const day = now.getDay();
const hour = now.getHours();
const minute = now.getMinutes();
const second = now.getSeconds();
const millisecond = now.getMilliseconds();

这些方法都以本地时间为基准来获取日期和时间的各个部分。

  • getFullYear():获取当前日期的年份
  • getMonth():获取当前日期的月份(0 表示 1 月,11 表示 12 月)
  • getDate():获取当前日期是当前月份的第几天
  • getDay():获取当前日期是周几(0 表示星期天,6 表示星期六)
  • getHours():获取当前时间的小时数(24 小时制)
  • getMinutes():获取当前时间的分钟数
  • getSeconds():获取当前时间的秒数
  • getMilliseconds():获取当前时间的毫秒数

格式化日期和时间

使用 date 对象的以下方法可以将日期和时间格式化成字符串:

  • toString():将 Date 对象转换为字符串
  • toDateString():将当前日期转换为字符串
  • toISOString():将 Date 对象转换为 ISO 格式的字符串
  • toJSON():将 Date 对象转换为 JSON 格式的字符串
  • toLocaleString():将 Date 对象转换为本地格式的日期字符串
  • toLocaleDateString():将当前日期转换为本地格式的字符串
  • toLocaleTimeString():将当前时间转换为本地格式的字符串
  • toTimeString():将当前时间转换为字符串

例如,下面的代码将把现在的日期和时间转换为本地格式的字符串:

const now = new Date();
console.log(now.toLocaleString()); // "9/2/2022, 3:10:20 PM"

操作日期和时间

Date 对象还提供了一系列方法来操作日期和时间。例如,可以使用 setFullYear() 方法来修改当前日期的年份,如下面的代码:

const now = new Date();
now.setFullYear(2023);
console.log(now.getFullYear()); // 2023

其他常用的操作方法还包括:

  • setMonth():设置当前日期的月份(0 表示 1 月,11 表示 12 月)
  • setDate():设置当前日期是当前月份的第几天
  • setHours():设置当前时间的小时数(24 小时制)
  • setMinutes():设置当前时间的分钟数
  • setSeconds():设置当前时间的秒数
  • setMilliseconds():设置当前时间的毫秒数

例如,下面的代码将把当前时间设置为 2 分钟之后:

const now = new Date();
now.setMinutes(now.getMinutes() + 2);
console.log(now); // 当前时间 + 2 分钟

示例1:构造自定义日期

在某些情况下,我们需要构造一个自定义的日期,例如下面的代码构造了一个表示 2023 年 12 月 25 日下午 3 点的 Date 对象:

const customDate = new Date(2023, 11, 25, 15);
console.log(customDate.toLocaleString()); // "12/25/2023, 3:00:00 PM"

这里需要注意的是,JavaScript 中的月份是从 0 开始的,因此 11 表示 12 月。

示例2:计算两个日期的差值

可以使用 Date 对象的 getTime() 方法来获取自 1970 年 1 月 1 日以来的毫秒数,然后计算两个日期的差值。例如,下面的代码计算了今天和明天的日期差:

const tomorrow = new Date(new Date().getTime() + 86400000);
const today = new Date();

const diff = Math.abs(tomorrow - today);
const diffInDays = Math.floor(diff / (1000 * 60 * 60 * 24));

console.log(diffInDays); // 1

这里的 86400000 代表一天的毫秒数,使用 Math.abs() 函数来获取差值的绝对值。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:JavaScript:Date类型全面解析 - Python技术站

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

相关文章

  • 原生Aajax 和jQuery Ajax 写法个人总结

    原生Ajax与jQuery Ajax写法个人总结 简介 Ajax(Asynchronous JavaScript and XML)是指一种创建交互式、快速动态网页的技术,在不重新加载整个网页的情况下,能够异步地更新部分网页内容。本文将介绍原生Ajax与jQuery Ajax的写法及其异同点。 原生Ajax写法 XMLHttpRequest对象 原生Ajax基…

    JavaScript 2023年6月11日
    00
  • JavaScript控制Session操作方法

    JavaScript控制Session操作方法攻略 Session是Web开发中非常重要的一种技术,可以用来保存用户的登录信息、购物车信息等。在JavaScript中,我们可以通过控制Session对象实现很多功能。 Session操作方法 要控制Session对象,我们需要使用JavaScript中的sessionStorage属性。sessionStor…

    JavaScript 2023年5月28日
    00
  • js实现时分秒倒计时

    JS实现时分秒倒计时 实现思路 实现时分秒倒计时的基本思路如下: 获取倒计时结束时间并转换为时间戳 获取当前时间并转换为时间戳 计算差值并转换为时分秒格式 输出倒计时结果 启动定时器,每秒钟更新一次倒计时结果 代码实现 // 获取元素 const daysEl = document.getElementById(‘days’); const hoursEl …

    JavaScript 2023年5月27日
    00
  • 用JS做的简单的可折叠的两级树形菜单

    下面我将详细讲解使用JS实现一个简单的可折叠两级树形菜单的攻略。 准备工作 首先,我们需要准备一些基本的html和css代码,用于渲染出菜单的样式和结构。下面是一个简单的示例结构: <div class="menu"> <ul> <li><a href="#">菜单1&l…

    JavaScript 2023年6月11日
    00
  • 使用C# 的webBrowser写模拟器时的javascript脚本调用问题

    使用 C# 的 WebBrowser 写模拟器时,常常涉及到对 JavaScript 脚本的调用。以下是一个完整的攻略,详细讲解如何在 C# 的 WebBrowser 中调用 JavaScript 脚本。 1. 步骤一:向 WebBrowser 添加加载完成事件 首先需要向 WebBrowser 添加加载完成事件,确保在页面加载完成后再执行 JavaScri…

    JavaScript 2023年6月10日
    00
  • 基于element-ui 动态换肤的代码详解

    基于element-ui动态换肤的代码详解,其实主要是通过更改CSS样式来实现主题颜色的更换。 首先,我们需要借助element-ui提供的主题生成工具element-theme来生成我们需要的主题样式文件。 生成主题样式文件的具体步骤如下: 全局安装element-theme: npm install element-theme -g 在项目目录下新建th…

    JavaScript 2023年6月10日
    00
  • JavaScript对表格或元素按文本,数字或日期排序的方法

    要对表格或元素按照文本、数字或日期进行排序,JavaScript提供了多种方法,常用的有以下几种: 1. 使用Array.sort()方法 Array.sort()是JavaScript中的原生排序方法,它会原地修改数组并返回排序后的数组。要使用该方法将表格或元素排序,我们需要先将其转换成数组,再调用sort()方法即可。在sort()方法中,我们需要传入一…

    JavaScript 2023年6月11日
    00
  • js获得当前时区夏令时发生和终止的时间代码

    要获取当前时区夏令时发生和终止的时间,可以使用 JavaScript 的 Date 对象的方法。 获取夏令时开始和结束的时间 要获取夏令时的开始和结束时间,可以使用以下代码: // 获取当前时间的时区偏移量 var offset = new Date().getTimezoneOffset(); // 构建夏令时开始和结束的日期对象 var dstStart…

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