JavaScript高级程序设计 读书笔记之十 本地对象Date日期

yizhihongxing

《JavaScript高级程序设计》第十章讲解了JavaScript中本地对象Date日期,是JavaScript中处理日期和时间的重要工具。下面是对这一章节的完整攻略。

一、日期时间的创建和实例化

在JavaScript中,可以使用new Date()创建一个日期对象。它会默认将当前时间作为日期时间的实例。也可以传入一个表示日期的字符串或者一个表示日期时间的整数(1970年1月1日之后的毫秒数)。

下面是几个示例:

1.1 创建当前的日期

const now = new Date();
console.log(now);  // 2022-05-06T21:25:32.214Z

1.2 根据字符串创建日期

const str = "2022-05-06T21:25:32.123";
const date = new Date(str);
console.log(date);   // 2022-05-06T21:25:32.123Z

1.3 根据毫秒数创建日期实例

const ms = Date.parse("2022-05-06T21:25:32.123");
const date2 = new Date(ms);
console.log(date2);  // 2022-05-06T21:25:32.123Z

二、获取和设置日期时间的方法

Date实例提供了各种方法,用于获取和设置日期、时间、时区等信息。

2.1 获取日期信息的方法

方法名 返回值
getFullYear() 返回当前日期的年份
getMonth() 返回当前日期的月份(0-11)
getDate() 返回当前日期的天数(1-31)
getDay() 返回当前日期是一周的第几天(0-6)
getHours() 返回当前日期的小时数(0-23)
getMinutes() 返回当前日期的分钟数(0-59)
getSeconds() 返回当前日期的秒数(0-59)
getMilliseconds() 返回当前日期的毫秒数(0-999)

2.2 设置日期信息的方法

方法名 描述
setFullYear() 设置当前日期的年份,通过年份标识,且自动设置月和日
setMonth() 设置当前日期的月份(0-12)
setDate() 设置当前日期的天数(1-31)
setHours() 设置当前日期的小时数(0-23)
setMinutes() 设置当前日期的分钟数(0-59)
setSeconds() 设置当前日期的秒数(0-59)
setMilliseconds() 设置当前日期的毫秒数(0-999)

下面是一些使用示例:

2.3 获取日期信息的示例

const now = new Date();
console.log(now.getFullYear());    // 当前年份
console.log(now.getMonth());       // 当前月份
console.log(now.getDate());        // 当前日
console.log(now.getDay());         // 当前星期
console.log(now.getHours());       // 当前小时
console.log(now.getMinutes());     // 当前分钟
console.log(now.getSeconds());     // 当前秒数
console.log(now.getMilliseconds());// 当前毫秒数

2.4 设置日期信息的示例

const date = new Date();
date.setDate(8);         // 设置日期为8日
date.setMonth(10);       // 设置月份为11,即12月
date.setFullYear(2024);  // 设置年份
console.log(date);       // Fri Nov 08 2024 21:37:13 GMT+0800 (GMT+08:00)

三、日期时间的比较和转换

Date类有一些方法,可以用于日期时间的比较和转换。

3.1 比较方法

以下是比较方法的列子:

const date1 = new Date("2022-05-06T12:34:56.789");
const date2 = new Date("2022-05-06T10:20:30.400");

console.log(date1.getTime() > date2.getTime());    // true
console.log(date1.getTime() === date2.getTime());  // false

3.2 转换方法

以下是转换方法的列子:

const date = new Date("2022-05-06T12:34:56.789");

console.log(date.toDateString());         // "Fri May 06 2022"
console.log(date.toTimeString());         // "12:34:56 GMT+0800 (GMT+08:00)"
console.log(date.toISOString());          // "2022-05-06T04:34:56.789Z"
console.log(date.toLocaleDateString());   // "2022/5/6"
console.log(date.toLocaleTimeString());   // "下午12:34:56"
console.log(date.valueOf());              // 1651820096789

四、总结

以上就是本地对象Date的完整攻略。在实际应用中,我们可以通过Date对象方便地处理日期时间。了解这些方法可以帮助开发者更加高效快捷地完成项目所需功能。

注:以上示例代码中的日期时间与时区有关,可能会因为时区而出现不同的值。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:JavaScript高级程序设计 读书笔记之十 本地对象Date日期 - Python技术站

(0)
上一篇 2023年6月10日
下一篇 2023年6月10日

相关文章

  • 详解用函数式编程对JavaScript进行断舍离

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

    JavaScript 2023年6月10日
    00
  • JavaScript中Location.search处理使用方法

    JavaScript中Location.search处理使用方法 在JavaScript中,Location对象提供了一些方法来操作URL,其中Location.search属性用于获取或设置URL中问号后面的查询字符串部分。查询字符串可以包含多个参数,每个参数由参数名和参数值组成,以等号连接,不同参数之间以&符号分隔。 获取查询参数 我们可以通过如…

    JavaScript 2023年6月11日
    00
  • JS使用window.requestAnimationFrame()实现逐帧动画

    下面是详细讲解“JS使用window.requestAnimationFrame()实现逐帧动画”的完整攻略: 什么是window.requestAnimationFrame() window.requestAnimationFrame()是浏览器提供的一种在下一帧动画前执行的方法,通常用作执行逐帧动画,相比于setTimeout或者setInterval,…

    JavaScript 2023年6月10日
    00
  • egg.js的基本使用实例

    下面我为大家讲解一下 Egg.js 的基本使用实例: 简介 Egg.js 是一个基于 Node.js 和 Koa.js 的企业级应用开发框架,它提供了一套易于上手的约定和最佳实践,并基于这些约定和最佳实践提供了适用于企业级应用的各种插件和扩展,同时还支持基于插件的扩展机制,让用户可以根据自己的需要对框架进行个性化定制。 安装 安装 Egg.js 的前提条件是…

    JavaScript 2023年6月11日
    00
  • javascript中window.open在原来的窗口中打开新的窗口(不同名)

    首先,我们需要了解 window.open() 这个函数,它能打开一个新的浏览器窗口或选项卡并返回新窗口的引用。它可以传递一些参数,如新窗口的 URL、名称、大小等等。 如果我们想在原来的窗口中打开一个新的窗口,可以使用以下代码: window.open("http://www.example.com", "_self&quot…

    JavaScript 2023年6月11日
    00
  • 原生JS封装animate运动框架的实例

    当我们需要进行网页中的动画操作,很多时候会涉及到DOM元素的运动,比如移动、旋转、透明度变化等等。这时候,JavaScript的animate函数封装可以帮助我们更加方便地实现动画效果。 以下是原生JS封装animate运动框架的实例的完整攻略: 1. 利用JavaScript封装animate运动框架 我们首先需要使用JavaScript来封装animat…

    JavaScript 2023年6月10日
    00
  • JavaScript中string对象

    下面我来为你详细讲解JavaScript中string对象的完整攻略。 概述 JavaScript中的字符串属于基本数据类型,但使用字符串时需要用到string对象来操作字符串,实现对字符串的读取、替换、删除、搜索等操作。 创建字符串 在JavaScript中,可以使用双引号(“”)或单引号(”)来创建字符串字面量。同时,也可以使用String()函数来将…

    JavaScript 2023年5月19日
    00
  • 使用JS画图之点、线、面

    使用JS画图之点、线、面 本文介绍如何使用JavaScript(以下简称JS)来画图,并详细讲解绘制点、线、面的完整攻略。 准备工作 在开始绘图之前,我们需要准备以下文件: HTML文件:用于展示画布 CSS文件:用于美化画布 JS文件:用于绘制图形 首先,在HTML文件中创建一个画布元素: <canvas id="myCanvas&quot…

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